replace - Syntax

Alles, was PHP betrifft, kann hier besprochen werden.

replace - Syntax

Postby ghost » 24. October 2005 16:41

Mit dem unten stehenden Befehl komm ich irgendwie nicht klar ( steh mom total auf der Leitung :roll: ).

Ich will die in $insertko, .. in die DBeintragen doch irgendwie krieg ich die Syntax ( MySQL müßte stimmen ) nicht gebacken...

Code: Select all
if($res=$db->query("replace into inselkampf values "($insertko)","($inserthe)","($insertin)","($insertpkt)","($insertal)))
{
printf("%d Datensätze.",$result->num_rows);
$res->close();}
$db->close();
ghost
 
Posts: 55
Joined: 17. January 2005 18:49

Postby jakimo72 » 24. October 2005 17:42

1. Bei MySQL muss hinter VALUES die Werte in Klammern stehen.
2. In PHP werden Stings mit Hilfe einem Punkt und nicht mit einer Klammer konkatiniert.
4. Sind alle Werte in der Datenbank numerisch? Ansonsten benötigt Du noch einfache Anführungsstriche.
3. die Variable result ist nicht definiert, sondern nur res.


P.S. Der Befehl REPLACE ist nicht SQL-Standard, daher solltest Du den Befehl nur verwenden, wenn Du sicher bist nur MySQL zu verwenden, ansonsten solltest Du INSERT verwenden.
User avatar
jakimo72
 
Posts: 151
Joined: 07. February 2005 13:25
Location: Hamburg-Barmbek

Postby ghost » 24. October 2005 18:01

zu:
1. Ok, füg ich ein
2. achso ok
4. Kann man die (einfache Anführungsstriche ) generell setzen oder ist das ein Fehler?
3. ups, die stammt noch aus der Abfrage weiter oben

Ists so besser ( kanns mom nicht testen ):
Code: Select all
if($res=$db->query("replace into inselkampf values ('"$insertko."','"$inserthe."','"$insertin.'","'$insertpkt."','"$insertal."')"))
{


P.S.: Verwende nur MySQL und nichts anderes

THANKS[/code]
ghost
 
Posts: 55
Joined: 17. January 2005 18:49

Postby jakimo72 » 24. October 2005 19:03

besser, aber es fehlen immer noch einige Punkte
Code: Select all
if($res=$db->query("replace into inselkampf values ('".$insertko."','".$inserthe."','".$insertin."','".$insertpkt."','".$insertal."')"))
{

wobei in diesem speziellen Fall kannst Du auch von der Möglichkeit
von PHP gebrauch machen, dass Variablen auch innerhalb von Strings mit
Doppelquote ersetzt werden. (Mag ich sonst nicht, bin es von anderen Sprachen her nicht gewohnt.)
Code: Select all
if($res=$db->query("replace into inselkampf values ('$insertko','$inserthe','$insertin','$insertpkt','$insertal')"))
{
User avatar
jakimo72
 
Posts: 151
Joined: 07. February 2005 13:25
Location: Hamburg-Barmbek


Return to PHP

Who is online

Users browsing this forum: No registered users and 53 guests