Neues Topic extern erstellen

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
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.
Antworten
Sylvus
Mitglied
Beiträge: 3
Registriert: 03.08.2010 19:44

Neues Topic extern erstellen

Beitrag von Sylvus »

Hi Leute,
Frage wurde ja schon oft gestellt, trotzdem bin ich einfach noch zu unerfahren um es hinzu bekommen.
Ich will einen Post in einem Forum erstellen und habe folgenden Code benutzt (zusammen geklaut):

Code: Alles auswählen

include ('http://localhost/pup-board/includes/functions_posting.php');
include ('http://localhost/pup-board/common.php');
//echo $phpbb_root_path . 'includes/functions_posting.' . $phpEx;

define('IN_PHPBB', true);

$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
//weiß ich auch nicht genau wie ich das definiere, habe es oben direkt angegeben!

$user->session_begin();  // Session auslesen
$auth->acl($user->data); // Benutzer-Informationen laden
//hab ich aber gar nicht, was nun?




//Betreff erstellen
  $topic="BLABLA";
//Post erstellen
  $threat="BLUMBLUM";

$my_subject = $topic;
$my_text = $thread;


// variables to hold the parameters for submit_post
$poll = $uid = $bitfield = $options = '';

generate_text_for_storage($my_subject, $uid, $bitfield, $options, false, false, false);
generate_text_for_storage($my_text, $uid, $bitfield, $options, true, true, true);

$data = array(
   'forum_id'      => 83,
   'icon_id'      => false,

   'enable_bbcode'      => true,
   'enable_smilies'   => true,
   'enable_urls'      => true,
   'enable_sig'      => true,

   'message'      => $my_text,
   'message_md5'   => md5($my_text),
            
   'bbcode_bitfield'   => $bitfield,
   'bbcode_uid'      => $uid,

   'post_edit_locked'   => 0,
   'topic_title'      => $my_subject,
   'notify_set'      => false,
   'notify'         => false,
   'post_time'       => 0,
   'forum_name'      => '',
   'enable_indexing'   => true,
);

echo submit_post('post', $my_subject, '', POST_NORMAL, $poll, $data);
Leider zeigt dies nur eine weiße Seite an. Jemand eine Idee?
Es liegt wohl auch daran, dass ich gar keine User hab, den ich übergeben kann, wie mache ich das?
Viele Grüße
Sylvus

//editiert -> aktualisiert
8_of_20
Mitglied
Beiträge: 12
Registriert: 12.09.2009 22:35

Re: Neues Topic extern erstellen

Beitrag von 8_of_20 »

In folgendem Beispiel würde der User mit der ID 677 das Thema/den Beitrag erstellen. Funktioniert bei mir wunderbar
(ich habe die Datei in einem Unterordner liegen, die Pfade musst du daher vielleicht anpassen)

Code: Alles auswählen

define('IN_PHPBB', true);
include ("../includes/functions_posting.php");
$phpbb_root_path = '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
$user -> session_create(677,false,false,false);
$auth->acl($user->data); // Benutzer-Informationen laden

//Betreff erstellen
  $topic="BLABLA";
...
Sylvus
Mitglied
Beiträge: 3
Registriert: 03.08.2010 19:44

Re: Neues Topic extern erstellen

Beitrag von Sylvus »

Hi,
ja meins liegt in einem ganz ganz anderen Ordner, nur gleicher Server.
Ich habe jetzt folgenden Code getestet, aber er gibt nur 1 aus. Zur 2 kommt er gar nicht -> stimmt also noch nicht.
Ne Idee? Viele Grüße

Code: Alles auswählen

define('IN_PHPBB', true);
$phpbb_root_path = '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);

include ('http://localhost/pup-board/includes/functions_posting.php');
include ('http://localhost/pup-board/common.php');


echo ("1");
$user -> session_create(2,false,false,false);
$auth->acl($user->data); // Benutzer-Informationen laden
echo ("2");

P.S. ja lag am andern Ordner, kann ich einfach aus nem anderem Ordner die Funktion aufrufen?
8_of_20
Mitglied
Beiträge: 12
Registriert: 12.09.2009 22:35

Re: Neues Topic extern erstellen

Beitrag von 8_of_20 »

Ich würde mal behaubten, dass deine common.php (und functions_posting.php) nicht richtig eingebunden werden.

Zum Verständnis, ist die Datei über die selbe Domain wie das Forum aufzurufen oder liegt sie zwar auf dem selben Server hat aber eine andere Domain?
Wo du jetzt localhost stehen hast, steht das da auch in deinem Script oder hast du dort die Domain eingetragen?


Wenn die Datei auf der selben Domain liegt, ist es egal in welchem Ordner der Script liegt. Wenn es zwei verschiedene Domains sind, kann ich dir nicht sagen ob es so überhaubt funktioniert.
Sylvus
Mitglied
Beiträge: 3
Registriert: 03.08.2010 19:44

Re: Neues Topic extern erstellen

Beitrag von Sylvus »

jo super, ich glaub den Rest schaff ich allein :)
DANKE!!!
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“