/mysql
Moppit
- php
Hi!
Folgende funktion einer Wrapper Klasse:
function insert($table, $fields = "", $values = "")
{
$sql_stat = "INSERT INTO $table ";
if (is_array($fields))
{
$theFields = implode(",", $fields);
}
else
{
$theFields = $fields;
}
if (is_array($values))
{
$theValues = "'".implode("','",$values)."'";
}
else
{
$theValues = $values;
}
$theValues = str_replace("'now()'", "now()", $theValues);
if (!empty($theFields)) $sql_stat .= "($theFields) ";
$sql_stat .= "values ($theValues)";
@mysql_query($sql_stat) or $this->error($sql_stat,mysql_error(),mysql_errno());
}
Könnte mir mal bitte jemand folgende Zeile erklären?
Danke
Habe die Zeile vergessen:
$theValues = str_replace("'now()'", "now()", $theValues);
Danke
Hi,
Habe die Zeile vergessen:
ja ist denn das zu fassen :-)
$theValues = str_replace("'now()'", "now()", $theValues);
Was genau hast Du, nachdem Du in der PHP-Doku unter der Funktion nachgeschlagen hast, nicht verstanden?
Cheatah
Hi,
$theValues = str_replace("'now()'", "now()", $theValues);
Was genau hast Du, nachdem Du in der PHP-Doku unter der Funktion nachgeschlagen hast, nicht verstanden?
Was genau soll das: "'now()'"
Danke
Hi,
Was genau soll das: "'now()'"
das sind die Buchstaben "n", "o" und "w", gefolgt von einer öffnenden und einer schließenden runden Klammer, eingerahmt von zwei Singlequotes. Genau das soll es. Es hätte auch "hurzpurz" da stehen können, nur nehme ich einfach mal an, dass der Programmierer nicht wünschte, "hurzpurz" zu ersetzen, sondern "'now()'" bevorzugte.
Cheatah
Ja,
das ist lustig.
:-)
Warum die single aber von den double quotes eingerahmt sind verstehe ich aber immer noch nicht.
Wenn ich z.B. in einer anderen Funktion eine Session ID erzeige und an diese Funktion übergebe kommt folgende Fehlermeldung:
INSERT INTO besucher (sid) VALUES (PoDeHXbxpRvVtHdY)
Unknown column 'PoDeHXbxpRvVtHdY' in 'field list'
1054
Die Systax ist doch richtig. In der Datenbank existiert die Spalte "sid" auch. Wo ist also das Problem?
hi,
INSERT INTO besucher (sid) VALUES (PoDeHXbxpRvVtHdY)
Unknown column 'PoDeHXbxpRvVtHdY' in 'field list'
1054
Die Systax ist doch richtig. In der Datenbank existiert die Spalte "sid" auch. Wo ist also das Problem?
ist PoDeHXbxpRvVtHdY eine von dir definierte konstante?
wenn nicht, warum schreibst du dann etwas, was vermutlich ein string sein soll namen einer als konstante?
gruss,
wahsaga
Hallo,
$theValues = str_replace("'now()'", "now()", $theValues);
In dem Wert der sich in $theValues befindet wird nach 'now() gesucht und durch now() ersetzt. Das ergebnis wir in $theValues abgelegt.
Aber wie gesagt: In der Doku dazu, steht eigentlich alles drin!
Tschau
Tobias
Hi,
Könnte mir mal bitte jemand folgende Zeile erklären?
gerne:
Danke
Hiermit wird in der deutschen Sprache eine Form von Dankbarkeit ausgedrückt. Dies wird durch den Kontext mit PHP, MySQL oder dem zitierten Script nicht verändert.
Cheatah
Hi,
Könnte mir mal bitte jemand folgende Zeile erklären?
gerne:
Danke
Hiermit wird in der deutschen Sprache eine Form von Dankbarkeit ausgedrückt. Dies wird durch den Kontext mit PHP, MySQL oder dem zitierten Script nicht verändert.
ROFL!
cu,
Andreas
Hiermit wird in der deutschen Sprache eine Form von Dankbarkeit ausgedrückt. Dies wird durch den Kontext mit PHP, MySQL oder dem zitierten Script nicht verändert.
Beim nächsten Mal kanst Du mich vor Lachen von der Wand abkratzen! :-))
Cu,
Stefan
Hi,
Beim nächsten Mal kanst Du mich vor Lachen von der Wand abkratzen! :-))
zum gegenwärtigen Zeitpunkt verspüre ich leider kein gesteigertes Interesse daran, abzukratzen ;-)
Cheatah