problème avec mon menu déroulant

Eléphanteau du PHP | 48 Messages

17 juin 2009, 09:12

bonjour
je suis entrain de faire un menu déroulant dans un tableau en php et j'ai un petit soucie avec le menu déroulant. est ce que vous pouvez m'aider s'il vous plait.

voici mon code:
<html>
<head><title>tableau dynamique </title></head>
<body>
<?php
//parametres de connexion
$machine="localhost";
$utilisateur="root";
$mot_passe="";
$nom_base="enregistrement";
//connexion au SGBD Mysql
$con=mysql_connect($machine,$utilisateur,$mot_passe) or die ('Erreur : '.mysql_error() );

//s'il y a de connection
//selection de la base des donnees
mysql_select_db($nom_base);
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$query='SELECT * FROM a_verifier';
$resultat=mysql_query($query,$con) or die (mysql_error());;
$total=mysql_num_rows($resultat);//donne le nombre de ligne
// si on a récupéré un résultat on l'affiche.
if($total) {
//debut du tableau

echo'<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les titres du tableau nomTA , pseudo , NRDVvalide ,
//NRDVenattente , NRDVannule dans 5 colones
echo '<tr>';
echo '<td bgcolor="#669999"><b><u>Nom_PDF</u></b></td>';
echo '<td bgcolor="#669999"><b><u>diffuser par</u></b></td>';
echo '<td bgcolor="#669999"><b><u>email du diffuser</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>destinateur</u></b></td&­gt;';
echo '<td bgcolor="#669999"><b><u>email du destinateur</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>date</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>état</u></b></td>­';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 6 colonnes, 1 résultat par ligne.
while($row=mysql_fetch_array($resultat))
{
	
echo '<tr>';
//echo '<td bgcolor="#CCCCCC"><a href="A_VERIFIER//'.$row["nom_pdf"].'">'.$row["nom_pdf"].'</a></td>'; 
echo '<td bgcolor="#CCCCCC"><a href="test4.php">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC">'.$row["diffusee_par"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email1"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["destinataire"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email2"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["date"].'</td>';
echo '<td bgcolor="#CCCCCC"><SELECT name="reponse" onChange="2"></td>'; 

echo '<td bgcolor="#CCCCCC"><option value="valider">valeur</option></td>';
echo '<td bgcolor="#CCCCCC"><option value="refuser">refuser</option></td>';
echo '</select>';
echo '</tr>'."\n";

}
echo '</table>'."\n";
// fin du tableau.

}
else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result($resultat);
?>
</body>
</html>

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 09:19

Quelle est l'erreur ?

Mets ton code entre des balises PHP pour le colorer afin que ce soit plus lisible.

J'ai vu rapidement que tu avais des TD qui se promenaient entre et dans les SELECT :shock:

Eléphanteau du PHP | 48 Messages

17 juin 2009, 09:30

désoler mais comme je suis un peu nouveau dans se forum donc j'ai pas trop l'habitude
je vais quand même vous présenter ma page.
Le principe de fonctionnement de cette page php est de faire un tableau en listant ma BDD et après de l'insérer dans mon tableau mais le soucie c'est que j'ai rajouter une colonne en plus pour me permettre de faire un menu déroulant dans les lignes mais le soucie c'est que j'ai essayer mais j'ai un peu de mal:

voici la partie du tableau:
echo'<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les titres du tableau nomTA , pseudo , NRDVvalide ,
//NRDVenattente , NRDVannule dans 5 colones
echo '<tr>';
echo '<td bgcolor="#669999"><b><u>Nom_PDF</u></b></td>';
echo '<td bgcolor="#669999"><b><u>diffuser par</u></b></td>';
echo '<td bgcolor="#669999"><b><u>email du diffuser</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>destinateur</u></b></td&­gt;';
echo '<td bgcolor="#669999"><b><u>email du destinateur</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>date</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>état</u></b></td>­';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 6 colonnes, 1 résultat par ligne.
while($row=mysql_fetch_array($resultat))
{

echo '<tr>';
//echo '<td bgcolor="#CCCCCC"><a href="A_VERIFIER//'.$row["nom_pdf"].'">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC"><a href="test4.php">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC">'.$row["diffusee_par"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email1"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["destinataire"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email2"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["date"].'</td>';
echo '<td bgcolor="#CCCCCC"><SELECT name="reponse" onChange="2"></td>';

echo '<td bgcolor="#CCCCCC"><option value="valider">valeur</option></td>';
echo '<td bgcolor="#CCCCCC"><option value="refuser">refuser</option></td>';
echo '</select>';
echo '</tr>'."\n";

}
echo '</table>'."\n";
// fin du tableau.

} 
est ce que vous pouvez m'aider à résoudre le problème

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 09:42

BBCODE ! Quand tu mets un code, tu as ce qu'on appelle des bbcodes qui te permettent de colorer ton code. Par exemple :
echo'<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les titres du tableau nomTA , pseudo , NRDVvalide ,
//NRDVenattente , NRDVannule dans 5 colones
echo '<tr>';
echo '<td bgcolor="#669999"><b><u>Nom_PDF</u></b></td>';
echo '<td bgcolor="#669999"><b><u>diffuser par</u></b></td>';
echo '<td bgcolor="#669999"><b><u>email du diffuser</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>destinateur</u></b></td&­gt;';
echo '<td bgcolor="#669999"><b><u>email du destinateur</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>date</u></b></td>­';
echo '<td bgcolor="#669999"><b><u>état</u></b></td>­';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 6 colonnes, 1 résultat par ligne.
while($row=mysql_fetch_array($resultat))
{

echo '<tr>';
//echo '<td bgcolor="#CCCCCC"><a href="A_VERIFIER//'.$row["nom_pdf"].'">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC"><a href="test4.php">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC">'.$row["diffusee_par"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email1"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["destinataire"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email2"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["date"].'</td>';
echo '<td bgcolor="#CCCCCC"><SELECT name="reponse" onChange="2"></td>';

echo '<td bgcolor="#CCCCCC"><option value="valider">valeur</option></td>';
echo '<td bgcolor="#CCCCCC"><option value="refuser">refuser</option></td>';
echo '</select>';
echo '</tr>'."\n";

}
echo '</table>'."\n";
// fin du tableau.

} 
C'est quand mêm plus lisible non ?

Maintenant si je comprend bien, tu désires mettre un SELECT au niveau de chaque enregistrement dans une cellule du tableau. Ton SELECT doit donc être dans un <td> :

Code : Tout sélectionner

<table> <tr> <td>enregistrement 1</td> <td> <select name=""> <option></option> <option></option> </select> </td> </tr> <tr> <td>enregistrement 2</td> <td> <select name=""> <option></option> <option></option> </select> </td> </tr> </table>

Eléphanteau du PHP | 48 Messages

17 juin 2009, 10:18

problème résolut merci pour l'exemple que tu m'as passer.
bonne journée a toi

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 10:25

Proposition de correction :
<table bgcolor="#FFFFFF">
<tr>
	<td bgcolor="#669999"><b><u>Nom_PDF</u></b></td>
	<td bgcolor="#669999"><b><u>diffuser par</u></b></td>
	<td bgcolor="#669999"><b><u>email du diffuser</u></b></td>
	<td bgcolor="#669999"><b><u>destinateur</u></b></td>
	<td bgcolor="#669999"><b><u>email du destinateur</u></b></td>
	<td bgcolor="#669999"><b><u>date</u></b></td>
	<td bgcolor="#669999"><b><u>état</u></b></td>
</tr>
<?php
while($row=mysql_fetch_array($resultat))
{
?>
<tr>
	<td bgcolor="#CCCCCC"><a href="test4.php"><?php echo $row["nom_pdf"];?></a></td>
	<td bgcolor="#CCCCCC"><?php echo $row["diffusee_par"];?></td>
	<td bgcolor="#CCCCCC"><?php echo $row["email1"];?></td>
	<td bgcolor="#CCCCCC"><?php echo $row["destinataire"];?></td>
	<td bgcolor="#CCCCCC"><?php echo $row["email2"];?></td>
	<td bgcolor="#CCCCCC"><?php echo $row["date"];?></td>
	<td bgcolor="#CCCCCC">
		<select name="reponse" onChange="2">
			<option value="valider">valeur</option>
			<option value="refuser">refuser</option>
		</select>
	</td>
</tr>
<?php
}
?>
</table>
Un conseil, jette un oeil sur les CSS ;)

Eléphanteau du PHP | 48 Messages

17 juin 2009, 10:33

j'ai fait comme ceci:
// lecture et affichage des résultats sur 6 colonnes, 1 résultat par ligne.
while($row=mysql_fetch_array($resultat))
{
	
echo '<tr>';
echo '<td bgcolor="#CCCCCC"><a href="A_VERIFIER//'.$row["nom_pdf"].'">'.$row["nom_pdf"].'</a></td>'; 
//echo '<td bgcolor="#CCCCCC"><a href="test4.php">'.$row["nom_pdf"].'</a></td>';
echo '<td bgcolor="#CCCCCC">'.$row["diffusee_par"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email1"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["destinataire"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["email2"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["date"].'</td>';
echo '<td bgcolor="#CCCCCC"><SELECT name="reponse" onChange="2">'; 
echo '<option value="valider">valeur</option>';
echo '<option value="refuser">refuser</option></td>';
echo '</select>';
echo '</tr>'."\n";

}
echo '</table>'."\n";

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 10:41

Ce n'est toujours pas bon. Regarde bien ton code, particulièrement les balises ouvrantes et fermantes. Est-ce que tu respectes la hiérarchie ?

Eléphanteau du PHP | 48 Messages

17 juin 2009, 11:13

je te rassure il marche très bien mes valeurs sont a l'intérieur et non a l'extérieur

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 11:19

Bé tu ne me rassures pas au vu de ton code :lol:

Attention, ce n'est pas parce que visuellement tu vois bien que ton code est bien.

Relis attentivement et tu verras ton erreur.

Eléphanteau du PHP | 48 Messages

17 juin 2009, 11:27

bas le problème , quand je jutilise la page php il y a bien le menu déroulant dans mon tableau.
c'est pour sa, je ne comprend pas

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 11:29

Je viens de te dire que bien visuellement ne veut pas dire que ton code est bien construit.
echo '<td bgcolor="#CCCCCC"><SELECT name="reponse" onChange="2">'; 
echo '<option value="valider">valeur</option>';
echo '<option value="refuser">refuser</option></td>';
echo '</select>';
echo '</tr>'."\n";
Tu ne vois rien dans ce morceau ?

Eléphanteau du PHP | 48 Messages

17 juin 2009, 11:34

le select?

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 juin 2009, 11:41

Un petit effort voyons, je t'ai donné un mini morceau de code où l'erreur est facilement repérable.

indice : "Hiérarchie" des balises.
<tr><td></td></tr> ok
<tr><td></tr></td> non ok

Eléphanteau du PHP | 48 Messages

17 juin 2009, 13:02

j'ai regarder mon code et je ne voix pas l'erreur désoler