Problem: Gefakter Benutzerwechsel im Skript
Verfasst: 04.06.2012 15:12
Hallo zusammen,
ich habe folgendes Setting: Meine Website bastle ich als in phpBB3 integrierte Seite (wirklich komfortabel bei den Funktionalitäten
). Auch das Backend für den redaktionellen Teil ist so integriert, dass vorher eine Abfrage kommt, ob der User Admin ist und wenn ja, dann darf er drauf zugreifen. (Es werden mehrere Leute sein, die darauf zugreifen, daher ist es an die Admin-Gruppe gekoppelt.)
Nun möchte ich folgendes erreichen: Wenn jemand einen Artikel veröffentlicht, soll automatisch ein Topic im Forum dazu eröffnet werden. Mit Hilfe des Forums hier und einer Brise Google, habe ich das Skript soweit hinbekommen mit dem Erstellen des Topics... fast.
Problem: Ich muss den Benutzer faken, der das Topic im Forum erstellt. Über den Standardcode, der automatisch im Adminmenü geladen wird, werden MEINE Benutzerdaten geladen. Ich möchte jedoch nicht als ICH im Forum posten, sondern als Bot. Allerdings brauche ich ja MEINE Benutzerdaten in anderen Bereichen und als Login fürs Adminmenü. Ohje, ich hoffe, ihr versteht, was ich meine. Hier mal mein Code:
Standardmäßig wird folgendes geladen:
Und somit meine persönlichen Daten mit user_id 2. Das wird auch weiterhin benötigt.
Hier mal meine Funktion, um den Beitrag im Forum zu erstellen:
Funktioniert fast einwandfrei, außer dass der Beitrag im Forum mit MEINEM User angelegt wird anstatt mit dem Bot (id=57). Wenn ich es ausgliedere in eine komplett neue Datei, dann kann ich das zwar mit Bot anlegen, allerdings werde ich mit MEINEM Account dann auch ausgeloggt, sodass ich aus dem Adminmenü fliege und auch beim eigentlichen Forum ausgeloggt bin.
Gibt es eine andere Möglichkeit, einen Bot zu nutzen UND mit meinem Account angemeldet zu bleiben?
Beste Grüße
Kimama
P.S.: Ich habe versucht, das Problem so gut wie möglich auf das Wesentliche zu reduzieren und hoffe, es ist verständlich. Wenn nicht, fragt bitte nach.
ich habe folgendes Setting: Meine Website bastle ich als in phpBB3 integrierte Seite (wirklich komfortabel bei den Funktionalitäten

Nun möchte ich folgendes erreichen: Wenn jemand einen Artikel veröffentlicht, soll automatisch ein Topic im Forum dazu eröffnet werden. Mit Hilfe des Forums hier und einer Brise Google, habe ich das Skript soweit hinbekommen mit dem Erstellen des Topics... fast.
Problem: Ich muss den Benutzer faken, der das Topic im Forum erstellt. Über den Standardcode, der automatisch im Adminmenü geladen wird, werden MEINE Benutzerdaten geladen. Ich möchte jedoch nicht als ICH im Forum posten, sondern als Bot. Allerdings brauche ich ja MEINE Benutzerdaten in anderen Bereichen und als Login fürs Adminmenü. Ohje, ich hoffe, ihr versteht, was ich meine. Hier mal mein Code:
Standardmäßig wird folgendes geladen:
Code: Alles auswählen
define('IN_PHPBB', true);
$phpbb_root_path = "../forum/";
$phpEx = substr(strrchr(__FILE__, '.'), 1);
require($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
Hier mal meine Funktion, um den Beitrag im Forum zu erstellen:
Code: Alles auswählen
function erstelleForenthema($id){
global $auth, $db, $user;
//Hier bewirkt das session_create nichts, ich poste dennoch mit user_id 2 (meine Profil-ID), nicht mit 57 (id des Bot)
$user->session_create(57,false,false,false);
$auth->acl($user->data);
$request = mysql_query("SELECT Titel, Teasertext, Kategorie_ID FROM redaktion_artikel WHERE Artikel_ID='$id'");
$artikel = mysql_fetch_array($request);
$board = 0;
switch($artikel['Kategorie_ID']){
case 1:
$board = 5;
break;
case 2:
$board = 6;
break;
case 3:
$board = 8;
break;
case 6:
$board = 9;
break;
case 7:
$board = 7;
break;
}
if($board > 0){
include ("../forum/includes/functions_posting.php");
//Betreff erstellen
$topic=$artikel['Titel'];
//Post erstellen
$thread=$artikel['Teasertext'];
$my_subject = utf8_encode($topic);
$my_text = utf8_encode($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' => $board,
'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,
);
submit_post('post', $my_subject, '', POST_NORMAL, $poll, $data);
}
}
Gibt es eine andere Möglichkeit, einen Bot zu nutzen UND mit meinem Account angemeldet zu bleiben?
Beste Grüße
Kimama
P.S.: Ich habe versucht, das Problem so gut wie möglich auf das Wesentliche zu reduzieren und hoffe, es ist verständlich. Wenn nicht, fragt bitte nach.