Voilà ce que nous souhaitons faire : http://www.livres-online.com/ecrire.php3, comme sur cette page permettre aux visiteurs du site de proposer des articles.
Gestion de l’insertion de l’article dans la base de données
Ce code PHP inclus sert à réaliser l’insertion des données dans la base une fois le formulaire validé. Il faut le mettre au tout tout début du squelette concerné.
<INCLURE(formulaire_article.php3)>
- Une erreur sera générée par le « header() » si un code HTML quelconque a été écrit préalablement (voir fichier),
- Si l’auteur est logué c’est lui l’auteur, sinon c’est l’auteur n° 1,
- L’article aura le statut « proposé ».
Affichage du Formulaire
À mettre à l’endroit opportun de votre squelette, dans une boucle (RUBRIQUES) avec pour id_rubrique la rubrique concernée.
<h1>Proposer un article</h1>
<?
if($message){
echo $message ;
}else{
if ($titre_article || $texte) {
?>
<h2>Appercu avant la publication </h2>
<div style="padding:10px;border:1px dashed #cccccc;margin:10px;width:40%">
<h3><?echo strtoupper($titre_article);?></h3>
<p><?echo nl2br($texte);?></p>
</div>
<?}else{?>
<p>
Vous souhaitez proposer un article, remplissez le formulaire ci-dessous</p>
<?}?>
<form method='POST' action='#SELF'>
<h2>Proposer un article</h2>
<p>Titre : <INPUT TYPE="text" CLASS="forml" NAME="titre_article" VALUE="<?echo $titre_article;?>" SIZE="30"></p>
<p>
<b>Descriptif :</b>
<BR><TEXTAREA NAME='texte' ROWS='20' CLASS='forml' COLS='40' wrap=soft><?echo $texte;?></textarea>
<!--
<p>
Nom du site : <INPUT TYPE="text" CLASS="forml" NAME="nom_site" VALUE="<?php echo $nom_site; ?>" SIZE="30">
</p>
<p>
Url du site : <INPUT TYPE="text" CLASS="forml" NAME="url_site" VALUE="<?php echo $url_site; ?>" SIZE="30">
</p>
-->
<DIV ALIGN="left"><small>Les champs en gras sont obligatoires</small></div><br>
<DIV ALIGN="right">
<INPUT TYPE="submit" NAME="Visualiser" CLASS="spip_bouton" VALUE="Visualiser votre article">
<?if ($titre_article && $texte) {?>
<INPUT TYPE="hidden" NAME="id_rubrique" VALUE="#ID_RUBRIQUE">
<INPUT TYPE="hidden" NAME="id_auteur" VALUE="<?php echo $auteur_session['id_auteur'] ; ?>">
<INPUT TYPE="hidden" NAME="redirect" VALUE="#SELF">
<INPUT TYPE="submit" NAME="Valider" CLASS="spip_bouton" VALUE="Demander la publication">
<?}?>
</DIV></p>
</FORM>
<?php } ?>
Le Script
Voici une nouvelle version du script :
Vous pouvez le télécharger, le modifier pour le rendre générique, et nous le re-proposer ici même (via le lien Variantes ci dessous par exemple).
Amusez vous bien.
Discussions par date d’activité
14 discussions
bonjour,
ce formulaire ne semble plus fonctionner sur spip 3.0. comment l’adapter svp ?
en SPIP 3.0, il vaut mieux utiliser le formulaire standard de SPIP :
#FORMULAIRE_EDITER_ARTICLE
. Voir http://contrib.spip.net/Formulaire-d-ajout-modification-d-articles-cote-publicoui je l’ai testé mais on ne peut pas publier en tant que visiteur...
a oui, en standard un visiteur ne peut pas publier. Tu veux quoi : publier ou proposer un article ? deux choses différentes. Je t’invite à regarder du côté du plugin « autorité ».
Sinon je te conseille de poster la question sur les forums généralistes de SPIP. Il y a plus de chance que des personnes te lise (là j’ai peur de te dire des betises si je ne teste pas avant, et je n’ai pas le tps de tester).
je veux créer un formulaire qui permet aux visiteurs de proposer un article dans une rubrique spécifique. et cette solution fonctionnait en ajoutant une ligne de code pour indiquer la rubrique.
je vais voir du côté d’autorité...
merci de m’avoir répondu
oui, clairement autorité permet de laisser une rubrique en « article proposable ».
bon visiblement ce n’est pas possible. ça ouvre la publication aux visiteurs enregistrés. or je ne veux pas les obliger à s’enregistrer...
Répondre à ce message
Bonjour et bravo pour cette contrib qui vient combler les attentes de plusieurs... sauf moi car je n’ai pas été en mesure de l’intégrer... 8¬(
Je suis nouveau avec SPIP, j’arrive à modifier des squelettes, boucles et tout mais là... je n’y arrive pas.
Quelqu’un a-t-il une petite minute pour me dire QUOI METTRE OU EXACTEMENT... DU GENRE « POUR LES NULS » ?????
Merci
Répondre à ce message
Tout ce qui touche à la permission aux visiteurs de publier un article est toujours fort interessant. En ce qui me concerne, j’utilise ce genre de contribution dans une page privée où seuls les mebres du site peuvent avoir accès si logué.
Ensuite je fais une boucle qui permet d’afficher directement le nom de l’auteur de la session, je rajoute un onglet pour les rubriques et pré-installe deux balises html, ainsi le membre ne peut plus se tromper de rubriques ( dans mon cas se sont des littéraires et pas informaticien pour deux sous) et la mise en page se fait toute seule.
Mais j’ai juste une petite question car je suis coincé sur un problème. J’ai installé un editeur de texte avancé Fckeditor qui s’ouvre depuis la zône privée avec une fenetre pop-up.
Comment faire pour rapatrier le bouton de la pop-up dans le formulaire de la partie publique présenté ici ?
Répondre à ce message
Bonjour,
Ne serait-il pas possible de faire quelque chose de ce genre :
http://www.mac4ever.com/participer/
http://www.mac4ever.com/participer/news/
pour la proposition des articles ?
Les options présentent, en plus de la prévisualisation, sont très sympathiques... C’est simple comme interface, est-ce adaptable à SPIP ?...
Répondre à ce message
Y aurait il moyen quel l’article envoyer sois tout de suite en ligne et non proposé à validation ?
Il suffit de remplacer le mot ’prop’ (comme proposé) par le mot ’publie’ (comme publié !) (à gauche de NOW() )dans le script php à inclure en debut de page.
Répondre à ce message
Bonjour,
franchement, c’est exactement ce que j’aurais besoin pour mon site ! Mais quelques questions subsistent pour ma part :
1. Est-il possible de le modifier pour que des champs extra soient ajouté ? (Dans mon cas actuellement, les articles proposés par les visiteurs ont un champ EXTRA intitulé « Soumis par : »)
2. Est-ce que les articles publiés ainsi sont directement publiés ou proposés à la publication ?
3. Est-ce quelqu’un qui n’a pas de compte auteur (et que je ne veux pas qu’il s’inscrive pour le moment pour éviter tout abus sur le site) peut-il poster un article qu’un administrateur validera ?
Voilà, je pense qu’il y a suffisamment de questions pour le moment... ;-)
Merci pour toute réponse.
- pour les champs extras j’en sais rien, faut tester ;-)
- l’article est proposé, il dispose d’un auteur et d’une rubrique par défaut définis dans le script
c’est justement l’intérêt de cette contribution !!
Ok mais je veux que ça soit publier sous le pseudo donner par le visiteur... Est-ce possible ?
Répondre à ce message
Bonjour,
J’écris pour obtenir un peu d’aide pour l’intégration de cette superbe contrib...
Je ne sais pas comment intégrer les scripts proposés dans mes squelettes... QUOI VA DANS QUOI et OU ??
Merci
Voici ce que j’ai réalisé pour intégrer cette contribution :
1 - J’ai créé un article avec un mot-clé (_devenir_redacteur). Cet article a un petit texte d’introduction du formulaire. Ce mot-clé a le numéro 19.
2 - J’ai modifié le squelette article.html en mettant :
<INCLURE(formulaire_article.php3)> en première ligne
et en insérant la boucle suivante (penser à modifier l’id du mot-clé) à l’endroit où j’ai souhaité placer le formulaire.
< !— ajout devenir rédacteur —>
<B_redacteur><BOUCLE_redacteur(ARTICLES)(id_article)(id_mot=19)>
COPIER-COLLER DU CODE AFFICHAGE DU FORMULAIRE
</BOUCLE_redacteur>
</B_redacteur><//B_redacteur>
< !— fin ajout devenir rédacteur —>
3. J’ai placé le fichier de script « formulaire_article.php3 » téléchargé sur ce site, à la racine.
Et tout fonctionne !
Attention, les neuneus de mon espèce ne percutent pas immédiatement que les parenthèses de id_article et id_mot=19 sont en fait des accolades.
Merci pour ton explication, elle m’a quand même bien aidé !
Répondre à ce message
Bonjour,
Je cherche à faire exactement ça sur spip1.9.2 est-ce que cette balise marche pour cette version de SPIP ? si non, comment je peux faire autrement ?
Merci pour votre aide !!!
J’ai trouvé le Plugin OpenPublishing. est-ce que ça correspond au #FORMULAIRE_ARTICLE.
Merci pour vos réponses ! Hier j’ai essayé de l’installer et j’ai planté mon site... :d ...
Alors ça m’embête un peu de recommencer avec le risque de planter à nouveau le site si ça ne correspond pas à se que je veux faire...
Merci pour vos réponses !!
en faite ,cette balise marche pour 1.9, tu vera ici un exemple http://www.fasotime.com
dans la rubrique 3 ème rubrique
Merci
Répondre à ce message
Le mode d’emploi n’est pas clair : il faudrait mettre un squelette de démo + le fichier .php3 du squelette + le script dans une seule archive ZIP.
Ensuite, le script permet effectivement de proposer un article, mais ne permet pas (encore) :
- de spécifier la langue (dans l’espace privé, la langue n’est pas renseignée, il faudrait au moins ajouter une langue par défaut)
- d’ajouter des pièces jointes (c’est tout l’intérêt de la contrib, sinon il y a déjà les forums)
- d’afficher l’auteur s’il y en a un
C’est une super contrib, donc j’espère que les auteurs auront un peu de temps pour l’améliorer encore !
Répondre à ce message
Bonjour et bravo pour cette contrib qui vient combler les attentes de plusieurs... sauf moi car je n’ai pas été en mesure de l’intégrer... 8¬(
Je suis nouveau avec SPIP, j’arrive à modifier des squelettes, boucles et tout mais là... je n’y arrive pas.
Quelqu’un a-t-il une petite minute pour me dire QUOI METTRE OU EXACTEMENT... DU GENRE « POUR LES NULS » ?????
Merci
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |