Page 1 sur 1

probleme de recuperetion de données sur un select

Posté : 08 févr. 2006, 17:31
par Micka
je souhaite recuperer des donnée via un switch case et l'afficher dans un select.
mais ma methode n'est sans doute pas correct, je tourne en rond

Code : Tout sélectionner

<td><select name="liste_portables" optionvalue="<? echo $portable;?>" >
	 if ( $_GET['incident'] !="")
	{
	$connexion = mysql_connect('localhost','root','') or die('Erreur de connexion '.mysql_error()); // Connexion à la base de donnée 
mysql_select_db('base_portable',$connexion)  or die('Erreur de selection '.mysql_error()); //Sélection de la base 
$requete2 = "SELECT * FROM detail WHERE id_detail = '".$_GET['incident']."' ";
// execution de la requete
$resultat2 = mysql_db_query('base_portable', $requete2, $connexion);
$detail == 'id_detail';
$comment == 'commentaire';
$date == 'date';
switch (mysql_result($resultat2,0,'id_status'))
{
case 1:
$portable = mysql_result($resultat2,0,'num_portable');
$comment = mysql_result($resultat2,0,'commentaire');
$date_libre = mysql_result($resultat2,0,'date');
$date_resa = "";
$date_pret = "";
$date_disp = "";
$etat_libre = " checked";
$etat_res = "";
$etat_pret = "";
$etat_disp = "";

break;

case 2:
$portable = mysql_result($resultat2,0,'num_portable');
$comment = mysql_result($resultat2,0,'commentaire');
$date_libre = "";
$date_resa = mysql_result($resultat2,0,'date');
$date_pret = "";
$date_disp = "";
$etat_libre = "";
$etat_res = " checked";
$etat_pret = "";
$etat_disp = "";
break;

case 3:
$portable = mysql_result($resultat2,0,'num_portable');
$comment = mysql_result($resultat2,0,'commentaire');
$date_libre = "";
$date_resa = "";
$date_pret = mysql_result($resultat2,0,'date');
$date_disp = "";
$etat_libre = "";
$etat_res = "";
$etat_pret = " checked";
$etat_disp = "";
break;

case 4:
$portable = mysql_result($resultat2,0,'num_portable');
$comment = mysql_result($resultat2,0,'commentaire');
$date_libre = "";
$date_resa = "";
$date_pret = "";
$date_disp = mysql_result($resultat2,0,'date');
$etat_libre = "";
$etat_res = "";
$etat_pret = "";
$etat_disp = " checked";
break;
}
	}	
	 

[/code]

Posté : 08 févr. 2006, 17:34
par charabia
Ton code HTML est déjà éronné...

Code : Tout sélectionner

<td><select name="liste_portables" optionvalue="<? echo $portable;?>" >
les balises ne se ferment pas, des mots sont collés...je te conseille de rectifier avant tout ce genre d'erreur.

Code : Tout sélectionner

<td> <select name="liste_portables"> <option value="<? echo $portable;?>">blabla</option> </select> </td>

Posté : 09 févr. 2006, 12:13
par Micka
en fait je souhaite que le résultat que je stock dans la variable $portable et qui correspond à un chant de la liste de ma base.
soit affiché dans le select ou point sur le select (connais pas terme exact).
donc je ne suis pas sur que option value soit la bonne expression à utiliser dans ce cas.

Posté : 09 févr. 2006, 12:51
par charabia
Si c'est bien le select et les option que tu dois utiliser. Pour cela, il te suffit de faire la boucle à partir des option et non du select.

La boucle cherche les données et les affiche en boucle en dupliquant autant de <option> qu'il y aura de résultat.

Posté : 09 févr. 2006, 13:19
par Micka
ok je comprend la logique du truc mais pas la mise en application.
voila comment j'ai refais mon select.
est ce que je dois plcer des conditions à la place des "???" ?

<select name="liste_portables">
<option value="<? echo $portable;?>">?????</option>
		  
		  
// Connexion à la base de donnée
$connexion = mysql_connect();

// requete
$requete = "SELECT * FROM portable";

// execution de la requete
$resultat = mysql_db_query('***', $requete, $connexion);

// Fermeture de la connexion
mysql_close($connexion);

for ($i = 0; $i < mysql_num_rows($resultat); $i++)
{
	echo "<option value=\"".mysql_result($resultat,$i,'num_portable')."\">".mysql_result($resultat,$i,'num_portable')."</option>";
}
	
</select>

Posté : 09 févr. 2006, 13:23
par charabia
Toutes tes réponses se trouvent ici :
:arrow: http://phpdebutant.org/article66.php

Remplaces juste les variables utilisées sur le site par tes propres variables en intégrant bien sûr ton <select>.

Posté : 09 févr. 2006, 13:57
par Micka
ok merci pour le site je vais voir ça.
Cependant je ne suis pas sur que nous nous soyons bien compris.
je n'ai pas de problèmes pour afficher dans le select les éléments de ma base de façon brut.
mais pour les faire pointers sur le bon enregistrement sélectionné sur une page précédente

Posté : 09 févr. 2006, 20:26
par charabia
ok merci pour le site je vais voir ça.
Cependant je ne suis pas sur que nous nous soyons bien compris.
je n'ai pas de problèmes pour afficher dans le select les éléments de ma base de façon brut.
mais pour les faire pointers sur le bon enregistrement sélectionné sur une page précédente
Heu oui je n'ai pas tout saisis alors...
Tu avais pourtant mis :
en fait je souhaite que le résultat que je stock dans la variable $portable et qui correspond à un chant de la liste de ma base.
soit affiché dans le select ou point sur le select (connais pas terme exact).
donc je ne suis pas sur que option value soit la bonne expression à utiliser dans ce cas.
Il faudrait ré-expliquer lol parce que là je suis perdu dans le fil... :roll:

Posté : 10 févr. 2006, 16:51
par Micka
j'ai changé de methode c'est bon merci du coup de main.
[RESOLU]