[3.2] in php insert into

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
pierre63
Mitglied
Beiträge: 24
Registriert: 28.03.2018 07:41
Kontaktdaten:

[3.2] in php insert into

Beitragvon pierre63 » 09.04.2018 15:22

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?

Verschoben von Support-Forum nach Coding & Technik am 09.04.2018 15:57 durch Kirk

Benutzeravatar
tas2580
Ehemaliger
Beiträge: 3023
Registriert: 01.07.2004 05:42
Wohnort: /home/tas2580
Kontaktdaten:

Re: [3.2] in php insert into

Beitragvon tas2580 » 09.04.2018 16:33

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
Heute ist ein guter Tag um dein Forum zu testen.
Ehemaliger Benutzername: [BTK] Tobi

Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 15466
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: [3.2] in php insert into

Beitragvon Dr.Death » 10.04.2018 07:20

'mesage' => 'test ',

sollte eher:

'message' => '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 ;-)

pierre63
Mitglied
Beiträge: 24
Registriert: 28.03.2018 07:41
Kontaktdaten:

Re: [3.2] in php insert into

Beitragvon pierre63 » 10.04.2018 11:53

Hi

Das mit message_id habe ich schon bemerkt , es ist ja ne AI Tabelle :grin:

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/

Benutzeravatar
canonknipser
Supporter
Supporter
Beiträge: 1684
Registriert: 10.09.2011 11:14
Kontaktdaten:

Re: [3.2] in php insert into

Beitragvon canonknipser » 10.04.2018 16:35

Da fehlt der Anfang von deinem Code, um das beurteilen zu können. Wenn das dein kompletter Code ist, fehlt vorneweg mindestens noch

Code: Alles auswählen

$sql_arr = (

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
Grüße, canonknipser
"there are only 10 types of people: those, who understand binary and those, who don't"
just arrived ;) - Bilder
Kein Support via PN, nur im Board und (manchmal) im IRC

pierre63
Mitglied
Beiträge: 24
Registriert: 28.03.2018 07:41
Kontaktdaten:

Re: [3.2] in php insert into

Beitragvon pierre63 » 11.04.2018 18:44

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')");


Zurück zu „Coding & Technik“