Tom: MySQL - Prüfen ob Eintrag exisitiert...

Beitrag lesen

Hello,

<?php   ### artikel_check.php ###

$host = "           ";  ##  <--- hier ausfüllen
$user = "           ";  ##  <--- hier ausfüllen
$pw   = "           ";  ##  <--- hier ausfüllen

$database = "       ";  ##  <--- hier ausfüllen

$lagernr  =          ;  ##  <--- hier ausfüllen oder per Formular übertragen

$con = mysql_connect($host,$user,$pw) or die("keine Serververbindung");
$db  = mysql_select_db($database, $con) or die("Datenbank nicht zugänglich: ".mysql_error($con));

Die Funktion liefert einen Wert größer 0, wenn nicht sichergestellt ist

dass die Artilenummer frei ist

abzuprüfen mit if artikel_check(nr) === 0

function artikel_check($lagernr)
{
  $ret = "keine Prüfung";

$sql = "Select id_artikel from artikel where lagernr = '$lagernr'";
  $res = mysql_query($sql, $con);
  if (!$res)
  {
    ## Ausdruck des Bedauerns. Abfrage war nicht möglich
    $ret = "leider keine Abfrage möglich: ".mysql_error($con);
  }
  else
  {
    if (mysql_num_rows($res) > 0)
    {
      ## Ey Alda, da sinn scho Artikel mit diesa Numma
      $ret = "die Artikelnummer $lagernr existiert schon";
    }
    else
    {
      ## keine Nummer da
      $ret = 0,
    }
  }
  return $ret;    # kein Fehler aufgetreten, nummer nicht da
}

#-----------------------------------------------------------

echo artikel_check($lagernr);

?>

Anzumerken ist:

Wenn die Verbindung innerhalb eines Scriptes mehrfach benutzt wird, baut man sie nur einmal auf und am Ende des Scriptes wieder ab (obwohl das PHP auch automatisch macht)

Funktionen dieser Art sollten immer Fehlernummern zurückgeben und 0 für "kein Fehler". Am Anfang der Funktion sollte man immer die Annahme setzen, dass der schwerste Fehler aufgetreten ist.

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau