Archives FluxBB.fr

Les archives de FluxBB.fr

Vous n'êtes pas identifié(e).

#1 02-10-2009 16:28:27

GRiBOU
Membre

Liste déroulante de balises

Bonjour,

je voulais savoir si il était faisable de faire un système comme sur VBulletin qui permettrait lorsque l'on créer un nouveau message, que a gauche du titre du sujet, on ai une liste déroulante de balises qui s'afficherait automatiquement dans le titre du topic une fois crée. Je voudrais aussi que cette liste déroulante ne s'affiche que sur certains forums, pas tous.

Exemple: je suis sur le forum de vidéos drole, je crée un nouveau topic, et a gauche du titre, j'ai une liste dans laquelle je sélectionne Youtube, Dailymotion, Koreus, etc mais que si je suis dans le forum de blague bidon, que y'ai pas de liste déroulante.

Merci d'avance.

Hors ligne

#2 02-10-2009 16:43:14

fanf73
Wik-wiki

Re : Liste déroulante de balises

C'est faisable assez facilement :
- Ajouter une liste déroulante à gauche du champ "sujet" qui s'affiche ou pas en fonction de l'id du forum
- Concaténer la valeur de cette liste déroulante et du champ "subject" lors de la récupération du sujet du nouveau topic


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#3 02-10-2009 17:12:52

GRiBOU
Membre

Re : Liste déroulante de balises

Merci pour ton explication, seulement, la seule chose que je saurais réaliser moi même, c'est la liste déroulante sad

Après pour ce que concerne le php, je suis largué, je code pas bien du tout.

Si tu peux me donner un petit coup de pouce, je l'accepte avec plaisir smile

Hors ligne

#4 02-10-2009 17:28:43

fanf73
Wik-wiki

Re : Liste déroulante de balises

Donne-moi la liste déroulante, je regarderai ça ce soir wink


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#5 02-10-2009 17:50:48

GRiBOU
Membre

Re : Liste déroulante de balises

<SELECT name="batiment" id="batiment">
    <OPTION selected="selected">Sélectionnez la balise</OPTION>
    <OPTION VALUE="YouTube">YouTube</OPTION>   
    <OPTION VALUE="DailyMotion">DailyMotion</OPTION>
    <OPTION VALUE="Koreus">Koreus</OPTION>
    <OPTION VALUE="Autre">Autre</OPTION>
</SELECT>

Si le membre ne sélectionne rien, il ne faut pas que sa indique dans le titre [Sélectionnez la balise] ! Sa serait bien que si on édit le topic, sa donne la liste déroulante a coté du titre et pas le titre final obtenu avec la balise, mais sa je sais pas si c'est faisable...

Merci beaucoup

Hors ligne

#6 02-10-2009 19:25:27

fanf73
Wik-wiki

Re : Liste déroulante de balises

Fichier post.php, ligne 498, chercher

<label><strong><?php echo $lang_common['Subject'] ?></strong><br /><input class="longinput" type="text" name="req_subject" value="<?php if (isset($_POST['req_subject'])) echo pun_htmlspecialchars($subject); ?>" size="80" maxlength="70" tabindex="<?php echo $cur_index++ ?>" /><br /></label>

Remplacer par

<label><strong><?php echo $lang_common['Subject'] ?></strong><br />
<?php
if(isset($_POST['type_video']))
    $type_video = pun_htmlspecialchars($_POST['type_video']);
else
    $type_video = "";
?>
<SELECT name="type_video" id="type_video">
    <OPTION VALUE=""<?php $type_video == "" ? "" : " selected='selected'" ?>>Sélectionnez la balise</OPTION>
    <OPTION VALUE="YouTube"<?php $type_video == "YouTube" ? " selected='selected'" : "" ?>>YouTube</OPTION>   
    <OPTION VALUE="DailyMotion"<?php $type_video == "DailyMotion" ? " selected='selected'" : "" ?>>DailyMotion</OPTION>
    <OPTION VALUE="Koreus"<?php $type_video == "Koreus" ? " selected='selected'" : "" ?>>Koreus</OPTION>
    <OPTION VALUE="Autre"<?php $type_video == "Autre" ? " selected='selected'" : "" ?>>Autre</OPTION>
</SELECT>
<input class="longinput" type="text" name="req_subject" value="<?php if (isset($_POST['req_subject'])) echo pun_htmlspecialchars($subject); ?>" size="80" maxlength="70" tabindex="<?php echo $cur_index++ ?>" /><br /></label>

Chercher ligne 284

// If it's a new topic
        else if ($fid)
        {
            // Create the topic

Ajouter après

if(isset($_POST['type_video']))
    {
    if($type_video != "")
        $subject = "[".pun_htmlspecialchars($_POST['type_video'])."] ".subject;
    }

Je n'ai pas testé mais ça devrait marcher.

Pour la dernière demande c'est possible mais ça demande plus de travail. Tu pourras essayer de te lancer dedans après avoir regardé ce que j'ai fait et appris à coder en PHP.


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#7 02-10-2009 19:55:58

GRiBOU
Membre

Re : Liste déroulante de balises

Alors, plusieurs bugs, le premier c'est que après avoir sélectionné la balise, je ne peux pas taper le sujet, sa se repositionne toujours sur la balise sad Et si je test d'envoyer le message sans mettre de sujet, j'arrive à mettre un titre.

Ensuite quand le post est créer, la balise [YouTube] ne s'affiche pas dans le titre du topic...

Hors ligne

#8 02-10-2009 20:36:46

fanf73
Wik-wiki

Re : Liste déroulante de balises

Remplace

if(isset($_POST['type_video']))
    {
    if($type_video != "")
        $subject = "[".pun_htmlspecialchars($_POST['type_video'])."] ".subject;
    }

par

if(isset($_POST['type_video']))
    {
    if($_POST['type_video'] != "")
        $subject = "[".pun_htmlspecialchars($_POST['type_video'])."] ".subject;
    }

et déplace toute la partie

<select>
...
</select>

après

<input class="longinput" type="text" name="req_subject" value="<?php if (isset($_POST['req_subject'])) echo pun_htmlspecialchars($subject); ?>" size="80" maxlength="70" tabindex="<?php echo $cur_index++ ?>" /><br /></label>

Elle sera après le champ du sujet mais ça devrait résoudre le problème.


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#9 02-10-2009 21:06:18

GRiBOU
Membre

Re : Liste déroulante de balises

Merci sa fonctionne super !

Est-ce qu'il est possible avec le fichier config.php de définir les forums dans lesquels afficher ces balises?

Hors ligne

#10 02-10-2009 21:29:35

fanf73
Wik-wiki

Re : Liste déroulante de balises

J'avais oublié ce détail, il faut entourer le select

<?php if($fid == X)
{
?>
<select>
...
</select>
<?php
}
?>

En remplaçant X par l'id du forum où tu veux les mettre. Si tu veux les afficher dans plusieurs forum, ajoute des conditions (cherche "structure conditionnelle PHP" sur un moteur de recherche si tu ne sais pas faire)


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#11 02-10-2009 21:32:04

GRiBOU
Membre

Re : Liste déroulante de balises

Ok merci, un dernier détail, lorsque je valide l'envoie du post, la balise [YouTube] ce met bien mais le titre n'est pas le bon, sa indique a chaque fois "subject" alors que je met autre chose

Hors ligne

#12 02-10-2009 22:08:28

fanf73
Wik-wiki

Re : Liste déroulante de balises

Il manquait un "$" à la variable dans cette ligne, à la fin :

$subject = "[".pun_htmlspecialchars($_POST['type_video'])."] ".$subject;

Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#13 02-10-2009 22:16:30

GRiBOU
Membre

Re : Liste déroulante de balises

Merci, c'est parfait, j'ai même trouvé en chipotant un peu, pour le placer avant le titre et que il n'y ai pas le souci d'être bloqué sur la liste déroulante.

J'ai essayé de l'améliorer un peu en plaçant une 2e liste déroulante qui indiquerait une note sur 10 de la vidéo, mais seulement, je sais pas comment faire pour la placer après le titre du topic

Pour avoir un titre du style: [YouTube] Nomdelavideo [3]

J'ai fais sa pour le moment:

<?php
//Note Vidéo
if($fid == 1)
{
?>
<SELECT name="type_note" id="type_note">
    <OPTION VALUE=""<?php $type_note == "" ? "" : " selected='selected'" ?>>Sélectionnez une note</OPTION>
    <OPTION VALUE="1"<?php $type_note == "1" ? " selected='selected'" : "" ?>>1</OPTION>   
    <OPTION VALUE="2"<?php $type_note == "2" ? " selected='selected'" : "" ?>>2</OPTION>   
    <OPTION VALUE="3"<?php $type_note == "3" ? " selected='selected'" : "" ?>>3</OPTION>   
    <OPTION VALUE="4"<?php $type_note == "4" ? " selected='selected'" : "" ?>>4</OPTION>   
    <OPTION VALUE="5"<?php $type_note == "5" ? " selected='selected'" : "" ?>>5</OPTION>  
</SELECT>
<?php
}
?>

Hors ligne

#14 02-10-2009 23:23:12

fanf73
Wik-wiki

Re : Liste déroulante de balises

Tu regardes comment j'ai ajouté la balise avant le titre dans l'autre partie du code, pas du côté du formulaire mais lors de son traitement.


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#15 02-10-2009 23:30:06

GRiBOU
Membre

Re : Liste déroulante de balises

J'ai regardé et la seule chose que j'ai réussi a faire c'est tout planter sad

Hors ligne

#16 03-10-2009 00:09:31

fanf73
Wik-wiki

Re : Liste déroulante de balises

Regarde de quelle manière je concatène (j'assemble) le titre et la balise dans le ligne de code de ce message : http://www.punbb.fr/forums/viewtopic.ph … 712#p81712 Il te suffit d'ajouter ta note à la fin.


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#17 03-10-2009 01:41:06

GRiBOU
Membre

Re : Liste déroulante de balises

ok je regarde sa demain et je viens te donner des nouvelles smile

Edit: J'ai réussi, merci beaucoup pour ton aide wink

Dernière modification par GRiBOU (03-10-2009 08:16:33)

Hors ligne

#18 03-10-2009 08:49:54

GRiBOU
Membre

Re : Liste déroulante de balises

Un dernier petit souci, j'ai donc ma ligne de code comme ceci:

{
    if($_POST['type_video'] != ""))
        $subject = "[".pun_htmlspecialchars($_POST['type_video'])."] ".$subject. " [".pun_htmlspecialchars($_POST['type_note'])."]"; 
    
    }

Seulement, si je suis dans un forum ou je n'ai proposé que d'afficher l'hébergeur de la vidéo dans le titre, j'ai à la suite du titre [ ] qui sont enfait les crochets de la note, comment est-ce que je peux dire que si hébergeur vidéo est choisis, on afficher entre crochet l'hébergeur et que si note vidéo est aussi choisi on le met également entre crochet?

Ex:
si le forum id=2 autorise les 2 balises: [YouTube] Titre [3]
si le forum id=3 autorise 1 balise: [YouTube] Titre   et non pas [YouTube] Titre []

Merci smile

Hors ligne

#19 03-10-2009 15:53:05

fanf73
Wik-wiki

Re : Liste déroulante de balises

Il faut que tu testes l'existence ou non de la variable pour savoir quoi ajouter.


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#20 03-10-2009 18:24:50

GRiBOU
Membre

Re : Liste déroulante de balises

J'ai essayé avec un && mais sa passait pas sad

Hors ligne

#21 03-10-2009 23:41:40

GRiBOU
Membre

Re : Liste déroulante de balises

Une idée pour mon problème?

Hors ligne

#22 04-10-2009 11:28:13

fanf73
Wik-wiki

Re : Liste déroulante de balises

Le faire en deux fois :
- ajouter le préfixe avec le type
- puis ajouter le suffixe avec la note
Avec pour chaque un test pour voir si l'information existe. Il va te falloir de plonger un minimum dans la programmation PHP


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#23 04-10-2009 19:16:56

GRiBOU
Membre

Re : Liste déroulante de balises

Tu pourrais pas me donner le code à mettre pcq je suis en total galère :boulet:

Hors ligne

#24 11-11-2009 18:48:14

Xtrem-AW
Membre

Re : Liste déroulante de balises

Salut ici !

serais t'il possible d'avoir un tuto complet pour faire sa pour chaque forum

car j'ai un forum d'aide et d'astuce et je voudrais que chaque forum affiche : [Astuce]+ selection : windows xp ou vista ect.. ou ne serais t'il pas plus simple de recréer un module du meme style de la prez de membre mais pour chaque type

Hors ligne

Pied de page des forums