[Réglé] [PHP] Poster message depuis son site sur son forum

Ce forum aborde toutes les questions qu'un codeur ou webmaster pourrait se poser, et n'ayant aucun rapport direct avec phpBB.
Tout ce qui peut concerner la récupération des sessions de phpBB sur votre site, doit se faire dans cette section.

Modérateur : Équipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com
Répondre
Nheavy
Posteur néophyte
Posteur néophyte
Messages : 45
Enregistré le : 23 sept. 2011 à 21:22

[PHP] Poster message depuis son site sur son forum

Message par Nheavy »

Bonjour,

J'aurais aimé pouvoir permettre aux utilisateurs de mon site de poster un message sur mon forum depuis un formulaire sur mon site, à peu près comme ça :
Formulaire
  • Champ 1
    Champ 2
    Champ 3
    Champ 4
[Envoyer par mail] [Envoyer sur le forum]
Ainsi lorsqu'on cliquerait sur [Envoyer sur le forum], ça enverrait tout le formulaire en texte vers un nouveau sujet :

Code : Tout sélectionner

http://www.monsite.fr/forum/posting.php?mode=post&f=11
C'est une solution qui marche bien pour les mails donc si il était possible de l’utiliser également sur le forum, ça serait génial ^^ Malheureusement, je ne vois pas comment faire pour transférer le formulaire, j'ai essayer avec la même méthode que les mails mais sans résultats.

Sauriez vous comment faire ?
Avatar du membre
Morgyanne
Marvelous girl
Marvelous girl
Messages : 31643
Enregistré le : 21 mars 2005 à 12:28
Localisation : Juste derrière toi...

Re: [PHP] Poster message depuis son site sur son forum

Message par Morgyanne »

Votre sujet a été déplacé par un membre de l'équipe.
en provenance de : Support phpBB3 ‹ Utilisation

Salut,

je déplace dans le Coding.

@+
Morgyanne :)
« What a filthy job !
Could be worse.
How ?
Could be rainin'. »

From Young Frankenstein
Nheavy
Posteur néophyte
Posteur néophyte
Messages : 45
Enregistré le : 23 sept. 2011 à 21:22

Re: [PHP] Poster message depuis son site sur son forum

Message par Nheavy »

Personne ne peut m'aider ?
Cobra21
Posteur néophyte
Posteur néophyte
Messages : 27
Enregistré le : 28 juil. 2011 à 09:29
Contact :

Re: [PHP] Poster message depuis son site sur son forum

Message par Cobra21 »

1) Tu ouvre ta session phpBB (si ce n'est pas déjà fait)

Code : Tout sélectionner

define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './forums/';
$phpbb_admin_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './forums/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup();
2) Tu créer ton formulaire de la manière que tu veut

3)tu met tes champs en variables

Code : Tout sélectionner

$pseudo = request_var('pseudo','',true);
...
$msg = request_var('msg', '',true);
4) Tu met tes variables dans une variable message, tu indique le forums, le sujet ET le message lui même

Code : Tout sélectionner

$message = "champ 1 :  ".$champ1."<br /> champ 2 : ".$champ2"";
$forum = X; // Remplacer X par l'id du forum dans lequel vous voulez postez

$time = time();
$sujet_brut = "message de  ".$auteur.""; // sujet qui apparaitra sur le fofo
$sujet_clean   = utf8_normalize_nfc($sujet_brut, '', true);
$mon_texte   = utf8_normalize_nfc($message, '', true);
5) Les variables du fofo

Code : Tout sélectionner

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

generate_text_for_storage($sujet_clean, $uid, $bitfield, $options, false, false, false);
generate_text_for_storage($mon_texte, $uid, $bitfield, $options, true, true, true);

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

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

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

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

6) Je soumet le post ($user->data['username'] = nom d'utilisateur de la session en cours)
submit_post('post', $sujet_clean, $user->data['username'], POST_NORMAL, $poll, $data);
A cela je conseille de rajouté un système de captcha pour évité les soucis de spams.


Pour le mail la méthode n'est pas compliqué, il suffit de rajouté dans ta soumission un envoi de mail.

Le code est bien entendu a complété mais la base est là...

Bonne chance
Nheavy
Posteur néophyte
Posteur néophyte
Messages : 45
Enregistré le : 23 sept. 2011 à 21:22

Re: [PHP] Poster message depuis son site sur son forum

Message par Nheavy »

Ah oui, c'est bien plus compliqué que les formulaires email.

Merci beaucoup Cobra21, mon problème est résolu !
Avatar du membre
Steph
Administrateur
Administrateur
Messages : 20714
Enregistré le : 29 déc. 2008 à 15:48
Localisation : Alsace / Bas-Rhin / France
Contact :

Re: [PHP] Poster message depuis son site sur son forum

Message par Steph »

Salut Nheavy,

[!] Si tu considère ton problème comme réglé, c'est le premier message de ce topic qu'il faut éditer pour y ajouter l'icône de sujet Image

Je l'ai fait pour toi

@+ :wink:
Répondre

Retourner vers « Coding, Webmastering et Sécurité informatique »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invité