MyBB.support, le portail francophone de MyBB
[Réglé] Problème création de sujet avec du code - Version imprimable

+- MyBB.support, le portail francophone de MyBB (https://mybb.fr)
+-- Forum : Plug-ins et modules pour MyBB (https://mybb.fr/forum-32.html)
+--- Forum : Support (https://mybb.fr/forum-15.html)
+--- Sujet : [Réglé] Problème création de sujet avec du code (/thread-5737.html)



Problème création de sujet avec du code - Horace - 26-06-2012

Bonjour,

J'ai suivis ce tutoriel : http://mybb.fr/thread-4166.html Je désire créer un sujet à partir d'un plugin. Mais je n'arrive pas à comprendre pourquoi ça ne fonctionne pas...

Dans mon plugin j'ai mis ce code :
Code PHP :
require_once MYBB_ROOT."inc/datahandlers/post.php";
$poster = new PostDataHandler("insert");
$poster->action "thread"

$nouveau_sujet = array(
    
"fid" => 10,
    
"subject" => 'Test',
    
"icon" => -1,
    
"uid" => 5,
    
"username" => "Information",
    
"message" => 'Vous pouvez laisser vos commentaires ici.',
    
"ipaddress" => '',
    
"posthash" => '',
    
"savedraft" => 0,
);
$nouveau_sujet['options'] = array(
    
"signature" => 'yes',
    
"emailnotify" => 'no',
    
"disablesmilies" => 'no'
); 
$poster->set_data($nouveau_sujet);

if(!
$poster->validate_thread()){
    
$result 'fail';
    
$reason 'unknow';
} else {
    
$result 'success';
    
$reason 'success';


Aucune erreur n'est retourné et validate_thread() renvois vrai...
Corrigé !

Je me suis inspiré de : http://mods.mybb.com/view/report-to-thread

On obtient :
Code PHP :
require_once MYBB_ROOT."inc/datahandlers/post.php";
$new_thread = array(
    
"fid" => 10,
    
"prefix" => 0,
    
"subject" => "titre " $mybb->user['username'],
    
"icon" => 0,
    
"uid" => 5,
    
"username" => "nom",
    
"message" => "Voici mon message doudodudodudodudoudodu",
    
"ipaddress" => "",
    
"posthash" => md5($mybb->user['uid'] . random_str()),
);

$posthandler = new PostDataHandler("insert");
$posthandler->action "thread";
$posthandler->set_data($new_thread);

if(!
$posthandler->validate_thread()){
    
$result 'fail';
    
$reason 'unknow';
} else {
    
$thread_info $posthandler->insert_thread();
    
$result 'success';
    
$reason 'success';




 Utilitaire de traduction fourni par Regentronique