Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Messages recommandés

Posté(e)

Bonsoir,

 

Je cherche depuis environ 2 heures sur le net comment faire un menu déroulant statique (je précise) sous Php. On ne parle que de menu dynamique etc...J'ai bien trouvé un bout de code pour du html mais j'aimerai du php svp. Merci par avance !!

  • Modérateurs
Posté(e)

Qu'est-ce que le PHP, sinon une surcouche à HTML qui permet de construire tout ou partie de ta page web de façon dynamique à partir de données ? Ainsi donc, pour la partie statique de ta page, tu codes les instructions en HTML.

 

Alors, pour ton menu, de deux choses l'une,

  • ou bien tu vas rechercher dans des fichiers les éléments de son contenu, et tu employeras pour ça des instructions PHP,
  • ou bien ton menu contient un nombre fixe de choix invariables, et tu vas le décrire en HTML, même dans une page PHP, ce sera naturel et normal.

Si donc tu as trouvé un exemple de présentation HTML qui te convient, inclue-le dans ta page PHP, et tu obtiendras les résultats attendus. :P

Posté(e)
Qu'est-ce que le PHP, sinon une surcouche à HTML qui permet de construire tout ou partie de ta page web de façon dynamique à partir de données ? Ainsi donc, pour la partie statique de ta page, tu codes les instructions en HTML.

 

Alors, pour ton menu, de deux choses l'une,

  • ou bien tu vas rechercher dans des fichiers les éléments de son contenu, et tu employeras pour ça des instructions PHP,
  • ou bien ton menu contient un nombre fixe de choix invariables, et tu vas le décrire en HTML, même dans une page PHP, ce sera naturel et normal.

Si donc tu as trouvé un exemple de présentation HTML qui te convient, inclue-le dans ta page PHP, et tu obtiendras les résultats attendus. :P

 

 

Merci pour ton aide. Mon menu contient un nombre fixe de choix invariable.

J'ai inclus ce code dans mon fichier download.php

 

 

<tr>

<td style='width:20%' class='forumheader3'>".DOWLAN_16.":</td>

<td style='width:80%' class='forumheader3'>

<select name="bdd" id="choix">

<option name="Debutant">Debutant</option>

<option name="Confirme">Confirme</option>

<option name="Expert">Expert</option>

</select>

</td>

</tr>

mais cela bloque, j'ai trouvé ce bout de code. A mon avis, c'est le bdd et le id=choix qui coince. Je précise, je n'y connais absolument rien en php ni en html. J'ai besoin de là pour mon CMS e107, j'aimerai modifier une page.Voilà, voilà. Voyez-vous une erreur ?

  • Modérateurs
Posté(e)

En fait, tu comptes t'appuyer sur la fonction <select>. Dans la séquence de code que tu cites, on va se contenter de retenir l'essentiel,

<select name="bdd" id="choix">
<option name="Debutant">Debutant</option>
<option name="Confirme">Confirme</option>
<option name="Expert">Expert</option>
</select>

car le reste est incomplet, disant que ton bouton <select> est rangé dans une cellule de table dont il manque les balises de début et de fin.

Les attributs name de <select> et <option> sont des étiquettes qui permettront d'identifier ces éléments (pour <option>, ils sont un peu inutiles). L'attribut id de <select> permet de faire référence à ce bouton <select>, par exemple dans une feuille de style qui en décrira la présentation.

 

Le problème, c'est que le choix qu'aura fait ton visiteur à l'aide du bouton <select>, il faut le transmettre quelque part, sinon il ne se passe rien d'autre. Pour savoir quelle valeur attribuer au <select>, c'est-à-dire quel choix a été effectué, il faut donner à chaque option un attribut value. Ensuite, pour transmettre cette valeur, tu dois inclure ton bouton <select> dans un formulaire (balise <form>).

<form method="post" action="action-sur-laquelle-on-enchaine">
<select name="bdd" id="choix">
<option value="1">Debutant</option>
<option value="2">Confirme</option>
<option value="3">Expert</option>
</select>
<input type="submit" value="OK">
</form>

Ici, les 3 choix se voient affecter respectivement les valeurs 1, 2 et 3 (mais ce pourrait être "Debutant", "Confirme" et"Expert").

Le bouton <input> va permettre de soumettre le formulaire, c'est-à-dire d'enchaîner.

L'attribut action du formulaire va indiquer comment enchaîner. Et là, je coince, j'ai oublié comment on aiguille à partir de l'option choisie. N'hésite pas à aller consulter un bon tutoriel HTML, par exemple sur le Site du ZerO (leurs tutos sont réputés). Je vais pour ma part appeler du renfort...

Posté(e)

WOW !! Merci ! je vais regarder tout ça. J'ai oublié un truc...En essayant de corriger le code, je me suis rappelé qu'onne mettait pas de " en php alors j'ai mis à la place des ' et là ma page a changé, le menu déroulant apparaît mais lorsque j'envois la page, aucun valeur choisie n'apparaît. Il faut que j'étudie à présent ta piste pour régler le soucis.

Posté(e)
Je cherche depuis environ 2 heures sur le net comment faire un menu déroulant statique (je précise) sous Php. On ne parle que de menu dynamique etc...J'ai bien trouvé un bout de code pour du html mais j'aimerai du php svp. Merci par avance !!
Euh... Il y a "menu dynamique" et "menu dynamique"...

Pour des besoins de clarté je vais les différencier en les appelant "menu déroulant" (le menu qui est "dynamique" parce qu'il comporte des parties mobiles ou animées dans la page Web, une fois qu'il est chargé) et "menu contextuel" (un menu qui est "dynamique" parce qu'il ne contient pas les mêmes rubriques / choix en fonction de la page sur laquelle il est affiché). Ces dénominations ne sont pas censées être applicables par ailleurs mais je rappelle que je vais uniquement les utiliser pour que les choses soient claires !

Si tu ne trouves que des pages qui parlent de "menu dynamique" c'est peut-être parce que justement les menus statiques consistent à inclure toujours le même bout de code pour donner toujours le même menu... (donc pas sujet à discussion)

J'aimerais que tu me dises ce que tu cherches exactement.

 

En particulier, pourquoi demandes-tu expressément du php pour ton menu ?

Juste pour le plaisir de remplacer <div id="monMenu"> (...) </div> par <?php echo "<div id=\"monMenu\"> (...) </div>" ?> ?

Alors qu'il suffirait de fermer le bloc de code php et de faire comme ceci :

<?php	(...)
?>
<div id="monMenu"> (...) </div>
<?php	(...)
?>

Bref. Pas compris l'interêt du PHP là dedans.

 

J'ai inclus ce code dans mon fichier download.php

 

 

<tr>

<td style='width:20%' class='forumheader3'>".DOWLAN_16.":</td>

<td style='width:80%' class='forumheader3'>

<select name="bdd" id="choix">

<option name="Debutant">Debutant</option>

<option name="Confirme">Confirme</option>

<option name="Expert">Expert</option>

</select>

</td>

</tr>

mais cela bloque, j'ai trouvé ce bout de code. A mon avis, c'est le bdd et le id=choix qui coince. Je précise, je n'y connais absolument rien en php ni en html. J'ai besoin de là pour mon CMS e107, j'aimerai modifier une page.Voilà, voilà. Voyez-vous une erreur ?

Je vois plein d'erreurs.

Si, comme les guillemets le laissent croire, tu es en train de générer du HTML en PHP, tu as oublié d'échapper les autres guillemets (les attributs name de des select et options, qui au passage devraient être des attributs value pour les options), et tu as oublié que les valeurs des attributs devaient être compris entre guillemets (et non apostrophes / "quotes").

Ton extrait de code aurait dû être :

<?php
 (bla bla)
 (pas de echo pour s'éviter une galère inutile)
?>
<tr>
<td style="width:20%" class="forumheader3"><?= DOWLAN_16 ?></td>
<td style="width:80%" class="forumheader3">
<select value="bdd" id="choix">
<option value="Debutant">Debutant</option>
<option value="Confirme">Confirme</option>
<option value="Expert">Expert</option>
</select>
</td>
</tr>
<?php
 (bla bla suite du code)
?>

 

Et comme te l'a dit Dylav, tu dois avoir inclus tes champs de saisie (en l'occurrence input et select) dans un <form> qui aura pour action l'URL du script qui devra traiter les données et pour méthode soit get (pour passer les données dans l'URL) soit post.

Dans un script PHP, pour récupérer les données d'un formulaire il faut connaitre la méthode utilisée pour l'envoi et le nom (attribut name du champ d'origine), et elles sont accessibles par $_POST["nom"] ou $_GET["nom"] ...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...