beckslevel91
Goto Top

Mysql - Update Befehl mit PHP

Hallo ich habe schon kreuz und quer im i-net gesucht und alles erdenkliche probiert, hat aber alles nicht funktioniert...

Ziel ist es, bestehende Datensätze mittels dem "UPDATE"-Befehl zu ändern.

Mein Code:

$db = mysql_connect('localhost','user','pass', 'datenbank') or die("Database error");  

mysql_select_db($db);


$update = 'UPDATE tabelle1 SET abteilung = '.$abteilung.' WHERE id = '.$id;  

		$result = mysql_query($update);

hat nicht funktioniert. Auch mit dem bekannten "prepare"-befehl und der Übergabe von ? hat nicht funktioniert (ERROR: Non-Object..)

Wie schaffe ich es jetzt mehrere Werte eines Datensatzes zu ändern und diesen Datensatz über die ID zu ermitteln?

Er bringt bei dieser Variante keinen Fehler, ändert aber auch nichts. Die Inhalte der Variablen stimmen jedoch.


Bitte um schnelle Hilfe..

Danke schonmal,...


Gruß,

J.R.

Content-Key: 136275

Url: https://administrator.de/contentid/136275

Printed on: April 16, 2024 at 12:04 o'clock

Member: ITLocke
ITLocke Feb 18, 2010 at 11:13:48 (UTC)
Goto Top
Hallo

in Zeile 4 solltest du den Namen der Datenbank angeben.

in $db steht der Rückgabewert: Eine MySQL Verbindungs-Kennung im Erfolgsfall oder FALSE im Fehlerfall.
NICHT deine Datenbank!

Da diese nicht angegeben wurde, sollte ein
echo mysql_error();
nach Zeile 9 etwas wie "No Database selcted" ausgeben.
Member: beckslevel91
beckslevel91 Feb 18, 2010 at 11:45:25 (UTC)
Goto Top
Hey super VIELEN DANK!

musste noch 2 kleinigkeiten ändern:

$db = mysql_connect('localhost','user','pass') or die("Database error");  

mysql_select_db('datenbank');  

		$aendern = 'UPDATE praktikum SET abteilung="'.$abteilung.'", name="'.$name.'" WHERE id = '.$id;  

		$result = mysql_query($aendern);

jetzt funktionierts!

Danke =)
Member: maretz
maretz Feb 18, 2010 at 13:31:02 (UTC)
Goto Top
Du kannst noch ne kleinigkeit ändern:

Du brauchst hier kein $result -> das Update-Stmt liefert m.W. eh nix zurück.

Dafür würde ich nen mysql_query($aendern) or die ("... Fehlermeldung....") machen (und zu Debug-Zwecken im Testbetrieb nen mysql_query($aendern) or die ("Fehler Update: ".$aendern);
einbauen...