Hi,
ich hab ein neues Problem und zwar fügt er in die datenbank immer nach dem aktualisieren neue Datensätze obwohl er das net soll.
Im Quellcode hab ich alles nähere beschrieben und auch den fehler erklärt hoffentlich kann mir einer Helfen.
// User Tabelle anlegen
mysql_query("CREATE TABLE IF NOT EXISTS tbluser (
UserID INT(1) NOT NULL auto_increment,
Nname varchar(30) character set latin1 collate latin1_general_ci NOT NULL,
Vname varchar(20) character set latin1 collate latin1_general_ci NOT NULL,
Passwort char(32),
Username char(7),
PRIMARY KEY (UserID))");
// Erfolg Tabelle anlegen in der gespeichert werden soll, wenn die User
Tabelle GEUPDATED wurde
mysql_query("CREATE TABLE IF NOT EXISTS tblerfolg (
ErfolgID INT(1) NOT NULL,
Erfolg INT(1),
PRIMARY KEY (ErfolgID))");
// Hier wird in die Tabelle Erfolg bei der Spalte Erfolg 0 eingetragen,
weil amanfang noch nichts GEUPDATED wurde und somit kein ERFOLG stattfand
mysql_query("INSERT INTO tblerfolg VALUES(1,0)");
// Hier wird geguckt, ob in der Tabelle erfolg eine 0 für nicht GEUPDATED
steht oder eine 1 für GEUPDATED und anschließend der Wert in die
Variable test gespeichert.
$test = 0;
$erfolggucken = mysql_query ("SELECT * FROM tblerfolg");
//$test = mysql_fetch_object($erfolggucken);
while($test = mysql_fetch_object($erfolggucken))
{
echo $test->Erfolg."<br />";
}
// Hier wird geguckt, ob die variable test auf 0 steht für noch nicht
GEUPDATED. Wenn sie auf 1 ist soll sie es nicht machen und wenn es auf 0
steht sol es das nachführende code ausführen.
// --->Hier ist auch der Fehler ich weis net wie ich das beheben kann.
Obohl in der test variable 1 steht nach dem ersten ausführen wir
trotzdem das nachfolgende ausgeführt.WIESO????
if($test->Erfolg == 0 )
{
//Hier wird ein user in die Tabelle user aufgenommen
mysql_query("INSERT INTO tbluser (Nname, Vname) VALUES('Hans', 'Mustermann')");
// Hier wird nachdem in die Tabelle user etwas eingefügt wurde, die tabelle
erfolg GEUPDATED damit sie beim nächsten mal nicht hier wieder rein
kommt, weil der INSERT befehl schon ausgeführt wurde.
mysql_query("UPDATE tblerfolg SET Erfolg = 1");
}
// Hier wird der Username für den User festgelegt, der aus den ersten 3
Buchstaben des Vor und -Nachnamens besteht
// Funktioniert ohne Probleme jetzt.
$sql = "SELECT UserID, concat(left(Nname,3),left(Vname,3)) AS Username
FROM tbluser WHERE Username is NULL;";
$result = mysql_query($sql) OR die ("Fehler bei der SQL Abfrage:<br/ >" . mysql_error());
while($row = mysql_fetch_object($result))
{
$updateSQL = "UPDATE tbluser SET Username='$row->Username', Passwort = 1234 WHERE UserID = $row->UserID";
if(mysql_query($updateSQL))
echo " Success: UserID: $row->UserID | Username: $row->Username <br />";
else
echo "Fehler bei UserID: $row->UserID | Username: $row->Username <br />";
}
MfG
Sapzero