Hallo zusammen,
ich habe jetzt ne kleine Ewigkeit gessucht und Code-Schnippsel nur zu alten Versionen gefunden.
Ich such eine Möglichkeit per PHP Script ein Thread in einem bestimmte Forum zu erstellen und am besten auch die IDs dafür zu erhalten.
Eine kleine Hilfe auf dem Weg wäre die Möglichkeit den Subject auch als Parameter übergeben zu können. Gibts hierfür schon was?
Board Version ist 3.0.0
Besten Dank für eure Hilfe
Sebastian
Post per PHP-Script erstellen / Subject als Parameter
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
-
- Mitglied
- Beiträge: 2
- Registriert: 07.01.2009 21:29
- oxpus
- Ehemaliges Teammitglied
- Beiträge: 5394
- Registriert: 03.02.2003 12:33
- Wohnort: Bad Wildungen
- Kontaktdaten:
Re: Post per PHP-Script erstellen / Subject als Parameter
Das wäre der PHP-Code (mal aus einem meiner Scripte), um ein Topic zu erstellen:
Mit $return_link erhält man den Link zum gerade erstellten Forum.
$topic_id und $post_id sind dann auch wohl selbsterklärend.
Vieleicht gehts auch eleganter oder besser, das Forum selber arbeitet eher mit deiner eigens hierfür angelegten Messenger-Klasse, aber das ist alles Geschmacksache...
Code: Alles auswählen
$insert_forum_id = 1; // Hier die Foren-ID angeben, in dem man das neue Thema erstellen will.
$allow_bbcodes = ($config['allow_bbcode']) ? true : false;
$allow_urls = true;
$allow_smilies = ($config['allow_smilies']) ? true : false;
$uid = $bitfield = '';
$flags = 0;
generate_text_for_storage($message, $uid, $bitfield, $flags, $allow_bbcodes, $allow_urls, $allow_smilies);
$mode = 'post';
$subject = $text; // Hier kann der Text für den Titel des Themas rein.
$username = $user->data['username'];
$topic_type = POST_NORMAL;
$poll = array();
$update_message = false;
$sql = 'SELECT * FROM ' . FORUMS_TABLE . '
WHERE forum_id = $insert_forum_id';
$result = $db->sql_query($sql);
$post_data = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$message = $body_of_post; // Der Inhalt des Beitrags
$data = array(
'topic_title' => $subject,
'topic_first_post_id' => 0,
'topic_last_post_id' => 0,
'topic_time_limit' => 0,
'topic_attachment' => 0,
'post_id' => 0,
'topic_id' => 0,
'forum_id' => 13,
'icon_id' => 0,
'poster_id' => $user->data['user_id'],
'enable_sig' => 0,
'enable_bbcode' => 0,
'enable_smilies' => 0,
'enable_urls' => 0,
'enable_indexing' => 0,
'message_md5' => md5($message),
'post_time' => time(),
'post_checksum' => '',
'post_edit_reason' => '',
'post_edit_user' => 0,
'forum_parents' => $post_data['forum_parents'],
'forum_name' => $post_data['forum_name'],
'notify' => false,
'notify_set' => 0,
'poster_ip' => $user->ip,
'post_edit_locked' => 0,
'bbcode_bitfield' => '',
'bbcode_uid' => $uid,
'message' => $message,
'topic_approved' => true,
'post_approved' => true,
);
include_once($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
$return_link = submit_post($mode, $subject, $username, $topic_type, $poll, $data, $update_message);
$topic_id = (int) $data['topic_id'];
$post_id = (int) $data['post_id'];
$topic_id und $post_id sind dann auch wohl selbsterklärend.
Vieleicht gehts auch eleganter oder besser, das Forum selber arbeitet eher mit deiner eigens hierfür angelegten Messenger-Klasse, aber das ist alles Geschmacksache...
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
-
- Mitglied
- Beiträge: 2
- Registriert: 07.01.2009 21:29
Re: Post per PHP-Script erstellen / Subject als Parameter
Hallo Oxpus,
besten Dank für deine Hilfe!
Ich habe es mittlerweile geschafft die passenden Includes zu finden und die meisten Fehler dich ich noch hatte zu beheben. Nur habe ich, so glaube ich, jetzt ein Problem mit dem usernamen.
Folgendes zur Konstellation:
www
www/drupal6
www/phpbb3
www/statische Seite
drupal 6 und phpbb3 mit bridge installiert, also gemeinsame userbasis mit drupal als Master -> keine separate Ameldung am Forum erforderlich. Aus Drupal ruft der User eine statische, aus .htms bestehende Homepage auf. Auf jeder von diesen ist ein Link, welcher mir mein PHP-File im /phpbb3 Ordner aufruft. Mein Skript soll jetzt was aus der .htm auslesen uns ins Forum schreiben. Und da waren Sie wieder, meine Probleme:
Fehlermeldungen:
Vermute mir fehlt was bei
Wenn ich $username manuell zum Testen befülle bekomme ich folgende Fehlermeldung:
Mein bescheidener Schluß, mir fehlt was mit dieser User-Klasse, aber was und wie mach ichs?
Besten Dank für deine Hilfe und ich hoffe das ganze ist einigermaßen verständlich, bin noch ziemlich am Anfang mit phpbb3 und php!
Gruß
Sebastian
besten Dank für deine Hilfe!
Ich habe es mittlerweile geschafft die passenden Includes zu finden und die meisten Fehler dich ich noch hatte zu beheben. Nur habe ich, so glaube ich, jetzt ein Problem mit dem usernamen.
Folgendes zur Konstellation:
www
www/drupal6
www/phpbb3
www/statische Seite
drupal 6 und phpbb3 mit bridge installiert, also gemeinsame userbasis mit drupal als Master -> keine separate Ameldung am Forum erforderlich. Aus Drupal ruft der User eine statische, aus .htms bestehende Homepage auf. Auf jeder von diesen ist ein Link, welcher mir mein PHP-File im /phpbb3 Ordner aufruft. Mein Skript soll jetzt was aus der .htm auslesen uns ins Forum schreiben. Und da waren Sie wieder, meine Probleme:
Fehlermeldungen:
Code: Alles auswählen
SQL ERROR [ mysql4 ]
Column 'topic_first_poster_name' cannot be null [1048]
An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
Code: Alles auswählen
$username = $user->data['username'];
Code: Alles auswählen
SQL ERROR [ mysql4 ]
Column 'topic_first_poster_colour' cannot be null [1048]
An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
Besten Dank für deine Hilfe und ich hoffe das ganze ist einigermaßen verständlich, bin noch ziemlich am Anfang mit phpbb3 und php!
Gruß
Sebastian
Re: Post per PHP-Script erstellen / Subject als Parameter
Hallo,
die fehlt die komplette $user Initialisierung. Das $user Objekt ist leer.
Siehe dazu auch:
http://wiki.phpbb.com/Deutsch:Vorlage_f ... ene_Seiten
http://wiki.phpbb.com/Parsing_text
die fehlt die komplette $user Initialisierung. Das $user Objekt ist leer.
Siehe dazu auch:
http://wiki.phpbb.com/Deutsch:Vorlage_f ... ene_Seiten
http://wiki.phpbb.com/Parsing_text
-
- Mitglied
- Beiträge: 1
- Registriert: 21.09.2009 15:13
Re: Post per PHP-Script erstellen / Subject als Parameter
Hallo Zusammen,
Dieser Thread ansich hat mir schon sehr weitergeholfen...
Ich kann nun ohne Probleme Posts im Forum per Skript erstellen... Soweit so gut..
Aber eine Frage bzw. Problem hätte ich da noch:
Ich würde aber auch gerne beim Posten Dateien mit hochladen und im Post darstellen.
Über einen Stoss in die richtige Richtung bzw. eine kleines Code-Beispiel wäre ich dankbar
Gruß und Danke
Jörg
Dieser Thread ansich hat mir schon sehr weitergeholfen...
Ich kann nun ohne Probleme Posts im Forum per Skript erstellen... Soweit so gut..
Aber eine Frage bzw. Problem hätte ich da noch:
Ich würde aber auch gerne beim Posten Dateien mit hochladen und im Post darstellen.
Über einen Stoss in die richtige Richtung bzw. eine kleines Code-Beispiel wäre ich dankbar
Gruß und Danke
Jörg