Seite 1 von 1
[3.2] in php insert into
Verfasst: 09.04.2018 15:22
von pierre63
Hallo
Ich wollte in eine php ein insert Befehl einfügen das
nach eine Aufgabe er in der Datenbank in die Tabelle mchat folgendes einfügt so das es in mchat erscheint.
Code: Alles auswählen
'message_id' => '1',
'user_id' => 2,
'mesage' => 'test ',
);
$sql = 'INSERT INTO ' . MCHAT_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_arr);
$db->sql_query($sql);
Aber es funktioniert nicht.
Wo liegt mein Denkfehler?
Re: [3.2] in php insert into
Verfasst: 09.04.2018 16:33
von tas2580
Sollte eigentlich so funktionieren. Ob das aber dann auch in mchat ausgegeben wird hängt davon ab wie mchat die DB ausliest. Ich könnte mir vorstellen dass "message_id" nicht immer 1 sein darf. Vermutlich musst du die auch gar nicht angeben weil die DB den Wert selbständig mit jedem neuen Eintrag um 1 erhöht.
Gruß Tobi
Re: [3.2] in php insert into
Verfasst: 10.04.2018 07:20
von Dr.Death
'[color=#FF0000]mesage[/color]' => 'test ',
sollte eher:
'[color=#008000]message[/color]' => 'test ',
heissen.....
message_id
ist nicht notwendig anzugeben, da es ein AUTO_INCREMENT beinhaltet.
message_time
muss noch angegeben werden, ansonsten ist der Beitrag eher am Ursprung des Chatverlaufs nur sichtbar

Re: [3.2] in php insert into
Verfasst: 10.04.2018 11:53
von pierre63
Hi
Das mit message_id habe ich schon bemerkt , es ist ja ne AI Tabelle
Wenn ich jetzt folgendes eingeben
Code: Alles auswählen
'user_id' => 2,
'message' => 'test ',
);
$sql = 'INSERT INTO ' . MCHAT_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_arr);
$db->sql_query($sql);
bekomme ich folgende meldung:
Code: Alles auswählen
parse error: syntax error, unexpected '=>' (T_DOUBLE_ARROW) in /www/htdocs/
Re: [3.2] in php insert into
Verfasst: 10.04.2018 16:35
von canonknipser
Da fehlt der Anfang von deinem Code, um das beurteilen zu können. Wenn das dein kompletter Code ist, fehlt vorneweg mindestens noch
um das überhaupt zu einer gültigen Anweisung zu machen. Und natürlich musst du auch den phpBB-Prolog mit Zuordnung und Bestückung der benötigten Funktionen, Variablen etc.einbauen. Ansonsten bekommt du bei der darauf folgenden Anweisung
$sql = ...
einen auf die Finger, weil weder die Konstante
MCHAT
noch die Objekt-Instanz
$db
mit ihrer Funktion
>sql_build_array
definiert sind
Re: [3.2] in php insert into
Verfasst: 11.04.2018 18:44
von pierre63
hallo
Ich habe nun folgende Code genommen und es funktioniert.
Code: Alles auswählen
$this->db->sql_query("INSERT INTO phpbb_mchat (user_id,message) VALUES ('2','test')");