Les formulaires et les valeurs

Répondre
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
Bonjour,
je voudrais savoir s'il est possible de mettre deux valeurs différentes dans une même balise "<option></option>" ?

je m'explique :

  1. <select name="select">
  2. <option value=$valeurphp>Nom</option>
  3. </select> 


Je voudrais ajouter une valeur supplémentaire en plus de $valeurphp mais en gardant la même balise "<option></option>". Y a t'il une soluce ?

PS: j'utilise du code PHP.
Meeper
Meeper
Déconnecté
---Meeper---
bonsoir
ceci c'est dans le cas ou tu va chercher tes valeurs dans une bd

  1. <?php $sql='select cat from table_categories';  
  2. $req=mysql_query($sql)or die('erreur sql!<br>'.$sql.'<br>'.mysql_error());  
  3.  
  4. echo'<option>VOTRE_CHOIX</option>';  
  5.  
  6. while($data=mysql_fetch_array($req))  
  7. {  
  8. $categorie=$data['nom_cat'];  
  9. echo "<option>$categorie</option>";  
  10. }  
  11. echo'</select>';?>
  12.  
  13.  
Meeper
Meeper
Déconnecté
---Meeper---
oupssss dans la requete c'est select nom_cat et pas select cat sinon mon exemple va pas fonctionner :)
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
donc si je comprend bien, je peux récupérer deux valeurs différentes d'un même champ du formulaire avec ce code ?

Je testerais demain, merci.
zebden
zebden
Déconnecté
zebdinou pour les intimes / Blog : http://www.zebden.fr
tu ne peux pas assigner deux valeurs proprement dit mais tu peux feinter genre

<select name="valueSelect">
<option value="toto;tata">valeur 1</option>
</select>

et a la recuperation $valueSelect = explode(';', $_POST['valueSelect']);

$valueSelect[0] vaudra toto et $valueSelect[1] vaudra tata
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
HA oui, ça me parrais plus clair
merci
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
Merci zebden c'est exactement ce que je cherchais.
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
Petit soucis pour la mise à jour dans la base de données.

J'ai donc une page modif.php et j'ai insérer les mêmes ligne que zebden ma chaleureusement indiquée. c'est à dire :

  1. <select name="valueSelect">
  2. <option value="toto;tata">valeur 1</option>
  3. </select>
  4.  
  5. et a la recuperation $valueSelect = explode(';', $_POST['valueSelect']); 


puis j'ai mis le code php pour la mise à jour :
  1.  
  2. reqmysql("UPDATE matable SET matable.id1=\"$valueSelect[0]\" WHERE matable.id=\"$id\"");
  3. reqmysql("UPDATE matable SET matable.id2=\"$valueSelect[1]\" WHERE matable.id=\"$id\"");
  4.  

mais voilà, sa ne marche pas ???
il ne met pas la base à jour.

Y a t'il une erreur ?
merci

PS : je sais c'est du PHP mais c'est la suite du problème posté auparavant.
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Essaye :

reqmysql("UPDATE matable SET matable.id1=\"".$valueSelect[0]."\" WHERE matable.id=\"".$id."\"");

reqmysql("UPDATE matable SET matable.id2=\"".$valueSelect[1]."\" WHERE matable.id=\"".$id."\"");

Sinon, pour voir l'erreur, fais un or die mysql_error sur tes mysql_query.
Et c'est quoi reqmysql ? Une fonction perso ? Elle affiche les messages d'erreur ?
Filipe
Filipe
Déconnecté
J'suis débutant et j'ai besoin d'aide....
Marche pas.
par contre si j'enlève le [0] et [1] et $valueSelect = explode(';', $_POST['valueSelect']);
il mes bien à jour la base mais pas les valeurs désirées, donc il doit y avoir un problème avec les []
zebden
zebden
Déconnecté
zebdinou pour les intimes / Blog : http://www.zebden.fr
Fais un echo de $valueSelect[0] et $valueSelect[1] avant de faire tes requêtes et voit ce que ca vaut.

Ensuite met des or die avec affichage des erreurs mySQL .

Pour debuger il te faut un peu de logique.

  1. <?php
  2. $valueSelect = explode(';', $_POST['valueSelect']);  
  3.  
  4. // Bon debugage  
  5. echo $valueSelect[0]; // OU  
  6. print_r($valueSelect);  
  7.  
  8. // Requete refaite (pas besoin de deux). et je te conseille pas ta fonction , un bon vieux mysql_query.  
  9.  
  10. $sql = 'UPDATE `matable` SET `id1` = "' . $valueSelect[0]. '" , `id2` = "' . $valueSelect[1] . '" WHERE `id` = ' . $id;  
  11.  
  12. $req = mysql_query($sql) or die('erreur ' . mysql_error());  
  13. ?> 



Voir les cours sur les requetes et UPDATE.
Voir le cours sur le debuggage.
Revoir les evidences.
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Breizh Blog