Seite 1 von 1

Datensatzprüfung

Verfasst: 05.03.2003 10:09
von mkoegler
Hallo

Ich habe ein Programm geschrieben, dass eine gewisse Anzahl von Datensätzen $anzahl in eine Datenbank schreibt.
Für jeden Datensatz wird eine Zufallszahl generiert $nummer und in die DB geschrieben.
Wie gelingt es mir eine if-Schleife zu implemetieren, die überprüft ob die Nummer schon vorhanden ist - habt Ihr da ne Idee;
Hier ist der Code:

<?

mt_srand((double)microtime()*10000000);

//Schleife zum Eintragen der Prepaidnummern Durchführungsintervall = $anzahl

for($i=1;$i<=$anzahl;$i++)
{
$db = mysql_connect("127.0.0.1", "root");
mysql_select_db("prepaid",$db);
$nummer = mt_rand(000000001,9999999999);


$sql = "INSERT INTO karte (nummer,betrag,aktion,betrageinzel,anzahl) VALUES ('$nummer','$betrag','$aktion','$betrageinzel','$anzahl')";
$ergebnis = mysql_query($sql,$db);
}


Vielen Dank im Voraus
:oops:

Verfasst: 05.03.2003 10:19
von PhilippK
Was hat das jetzt mit phpBB zu tun?

Ansonsten wenn 'nummer' als Primary Key definiert ist, solltest du es daran bemerken, dass die dir mysql_query einen Fehler zurückgibt.

Gruß, Philipp

Verfasst: 05.03.2003 10:52
von mkoegler
Leider ist die nummer nicht der Primärschlüssel;
Ich müsste eine Überprüfung der $nummer aus der Datenbank in meine for Schleife bauen - aber wie?

Verfasst: 05.03.2003 11:28
von PhilippK

Code: Alles auswählen

$sql = "SELECT nummer
  FROM karte
  WHERE nummer = $nummer";
if ( !($ergebnis = mysql_query($sql,$db)) )
{
  die('Fehler bei SQL-Ausführung);
}
if ( $row = mysql_fetch_array($ergebnis) )
{
  // Nummer bereits vergeben
}
else
{
  // Nummer noch nicht vergeben
}
Gruß, Philipp

Verfasst: 05.03.2003 12:02
von mkoegler
Vielen Dank