Diese Seite mit anderen teilen ...

Informationen zum Thema:
Forum:
Phorum.org Hilfe-Forum
Beiträge im Thema:
6
Erster Beitrag:
vor 4 Jahren, 8 Monaten
Letzter Beitrag:
vor 4 Jahren, 8 Monaten
Beteiligte Autoren:
Matthias Bahn, thomas (Mysnip.de)

Selbst in die Datenbak eines phorums einen Datensatz einfügen

Startbeitrag von Matthias Bahn am 29.04.2013 17:07

Hallo liebes Forum,
ich will in ein Phorum selbst mit PHP/MySQL einen Datensatz - also ein Posting - einfügen.
Mittels phpMyAdmin sieht man ja gut, was alles nötig ist...
In der Tabelle phorum_messages habe ich das auch geschafft, der Datensatz ist soweit plausibel drinn in der Tabelle, nur zwei Probleme sind da:
1. Er wird im Forum nicht angezeigt
2. Die Spalte "msgid" - offensichtlich bestehend aus einer "generierten ID.Forumname" ist leer.
Wie kann ich 2. erzeugen und wird dann 1. auch angezeigt?
Vielen Dank für alle sachdienlichen Hinweise im Voraus!
Gruß Matthias Bahn

Antworten:

Weiterer Stand...

...die Suche nach eunem neunen Datensatz einfügen (habe ich zuvor natürlich gemacht), erbrachte nichts.
Aber die Suche nach "msgid".
Es scheint so zu sein, dass man die mit
$message["msgid"] = md5(uniqid(rand())) . "." . preg_replace("/[^a-z0-9]/i", "", $PHORUM["name"]) ;
füllen könnte - aber die ist nur bei PNs / mail wichtig - diese Funktionalität wird im verwendeten Forum nicht genutzt.
Hmmm, an was liegt es dann, dass der Datensatz in phorum_message nicht angezeigt wird? :-(

von Matthias Bahn - am 29.04.2013 17:26

Noch ein weiterer Stand...

Die Spalten "parent_id", "thread" und "message_id" hatte ich nicht beschickt, - sie waren alle mit derselben Nummer bei Einfügen des Datensatzes erzeugt worden.
Ich habe nun die Spalte "parent_id" in phpMyAdmin auf 0 gesetzt, nun wird der Datensatz angezeigt (tu)
Ist das die Lösung meines Problems?
Muss ich also im SQL-Statement "parent_id=0" setzen?

von Matthias Bahn - am 29.04.2013 17:47

Re: Weiterer Stand...

Hallo,

ja, die parent_id muss = 0 sein, wenn ein neues Thema, da es ja dann keinen Parent gibt. Bei einer Antwort muss darin die message_id des Beitrags stehen, auf den es eine Antwort sein soll.
thread muss bei einem neuen Thema gleich der message_id sein, sonst eben die thread id des Themas, also die message_id des ersten Beitrags.
Die message_id wird via auto_increment automatisch beim insert erzeugt.

von thomas (Mysnip.de) - am 29.04.2013 18:23

Weitere Fragen...

Zitat
thomas (Mysnip.de)
...
thread muss bei einem neuen Thema gleich der message_id sein, sonst eben die thread id des Themas, also die message_id des ersten Beitrags.
Die message_id wird via auto_increment automatisch beim insert erzeugt.


Danke Thomas,

habe ich soweit alles verstanden; gibt es eine Möglichkeit im PHP-Skript, die mittels auto:increment erzeugt wird, gleich in das Feld thread reinzubringen?
Oder geht das nur mittels weiterem Script-Konstrukt?

Und noch ein Problem - die Umlaute ä,ö,ü,Ä,Ö,Ü - wie setze ich die per PHP in den Datensatz, dass die korrekt dargestellt werden?
Mit ü & Co. geht es nicht, da wird dann ü im Forum angezeigt.
Müsste ich das mit z.B. [html]ü[/html] rinfummeln?
Hilfsweise das PHP-Script mit






begonnen brachte auch keinen Erfolg :(

Danke für alle Hinweise!

VG Matthias Bahn

von Matthias Bahn - am 01.05.2013 17:11

Re: Weitere Fragen...

Die Umlaute müssen einfach als Umlaute und dann möglichst im gleichen Zeichensatz, z.B. UTF-8, wie im Forum verwendet da rein geschrieben werden.
Ich kenne Dein Script nicht aber dort irgendein HTML-Konstrukt hilft vermutlich nicht viel.

von thomas (Mysnip.de) - am 01.05.2013 21:05
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.