Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
657 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Question bête on peut crée une liste comme cela

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Question bête on peut crée une liste comme cela

n°327034
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 01:08:18  profilanswer
 

Voilà le but c'est de crée une liste à partir des informations d'une base de donnée. Je me demande si je peux la crée de cette manière ou mon code est complètement bidon.
 
 
 
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FBD5A0" text="black" link="black" vlink="black" alink="black">
<p align="center"><font size="5">Affichage des contacts</font></p>
<?
echo '<form method="post">';
echo '<select name="choix">';
$db=mysql_connect('localhost','root','';);
mysql_select_db('contact',$db);
$sql='SELECT auto,Nom,Prenom FROM contact_tbl ORDER BY Nom';
$req=mysql_query($sql) or die('Erreur SQL ! <br>'.$sql.'<br>'.mysql_error());
while($data=mysql_fetch_array($req))
{
 echo'<option value="'.($data['auto']).'">'.($data['Nom']).' '.($data['Prenom']).'</option>';
 }
echo '</select>';
echo '  <input type="submit" value="Afficher">';
echo '</form>';  
if ($choix<>0) {
 //echo '<br><br>ici'.$choix; debug
 $sql='SELECT * FROM contact_tbl WHERE auto=(.$choix)';
 $req=mysql_query($sql) or die('Erreur SQL ! <br>'.$sql.'<br>'.mysql_error());
 while($data=mysql_fetch_array($req))
 {
   echo'<Nom :"'.($data['Nom']).' Prénom :'.($data['Prenom']).'</br>';
  }
 }
 else {
   echo '<br><br> Problème de Base de donnée';
 }  
mysql_close();
?>
</body>
</html>


Message édité par bossamiral2 le 09-03-2003 à 05:05:40
mood
Publicité
Posté le 09-03-2003 à 01:08:18  profilanswer
 

n°327042
mrbebert
Posté le 09-03-2003 à 01:19:32  profilanswer
 

Non, c'est bien :)

n°327044
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 09-03-2003 à 01:21:17  profilanswer
 

keskel est bete la question [:dawa]

n°327057
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 01:29:12  profilanswer
 

Pourtant avec ça comme modification, j'ai la liste mais pas valeur de ma base de donnée dedans. Pige pas si la creation de la liste fonctionne il doit être possible de mettre les valeurs  
 
 
 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
 <?
 print("<form name=\"form1\" method=\"post\" action=\"affichersingle.php3\">" );
 print("<select name=\"select\">" );
 $db=mysql_connect('localhost','root','';);
 mysql_select_db('contact',$db);
 $sql='SELECT Auto,Nom FROM contact_tbl ORDER BY Nom';
 $req=mysql_query($sql) or die('Erreur SQL ! <br>'.$sql.'<br>'.mysql_error());
 while($data=mysql_fetch-array($req))
 {
 echo'<option value=\"'.$data['Auto'].'\">'.$data['Nom'].'</option>';
 }
mysql_close();
print("</select></form>" );  
?>
</body>
</html>

n°327065
mrbebert
Posté le 09-03-2003 à 01:34:03  profilanswer
 

Vérifie le source de page HTML, reçue par le navigateur, pour voir ce que le script a généré.
Mais le principe est bon :)

n°327070
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 01:35:53  profilanswer
 

en faite tout marche très bien, j'avais juste une erreur de synthax dans le code  "" mysql_fetch-array "" au lieu de "" mysql_fetch_array ""
 
Voilà

n°327126
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 09-03-2003 à 01:53:20  profilanswer
 

bossamiral2 a écrit :

Pourtant avec ça comme modification, j'ai la liste mais pas valeur de ma base de donnée dedans. Pige pas si la creation de la liste fonctionne il doit être possible de mettre les valeurs  
 
 
 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
 <?
 print("<form name=\"form1\" method=\"post\" action=\"affichersingle.php3\">" );
 print("<select name=\"select\">" );
 $db=mysql_connect('localhost','root','';);
 mysql_select_db('contact',$db);
 $sql='SELECT Auto,Nom FROM contact_tbl ORDER BY Nom';
 $req=mysql_query($sql) or die('Erreur SQL ! <br>'.$sql.'<br>'.mysql_error());
 while($data=mysql_fetch-array($req))
 {
 echo'<option value=\"'.$data['Auto'].'\">'.$data['Nom'].'</option>';
 }
mysql_close();
print("</select></form>" );  
?>
</body>
</html>
 

:ouch:  :ouch:

n°327136
boubours
procrastineur né
Posté le 09-03-2003 à 01:56:13  profilanswer
 


 
pkoi  :ouch:  :ouch:  ??

n°327144
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 09-03-2003 à 01:59:00  profilanswer
 

boubours a écrit :


 
pkoi  :ouch:  :ouch:  ??

j'en sais rien peut etre parce que je le forum est flou  :ouch:  :ouch:

n°327145
Je@nb
Kindly give dime
Posté le 09-03-2003 à 01:59:02  profilanswer
 

tu peux virer 3 print :p

mood
Publicité
Posté le 09-03-2003 à 01:59:02  profilanswer
 

n°327151
boubours
procrastineur né
Posté le 09-03-2003 à 02:02:08  profilanswer
 

forummp3 a écrit :

j'en sais rien peut etre parce que je le forum est flou  :ouch:  :ouch:  


 
c kler il est chelou soir ce  :pt1cable:

n°327169
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 02:18:50  profilanswer
 

désolé je ne sais pas faire plus simple :pt1cable:  
 
non je débute alors je me lance dans des trucs pas croyable pas manque de connaisance du php. je suis sur qu'il y a plus simple mais je ne sais pas faire

n°327172
mrbebert
Posté le 09-03-2003 à 02:29:01  profilanswer
 

Je vois ce qu'il peut y avoir de plus simple pour gérer une liste à partir du contenu d'une base :??:  
 
Bon, il y a surement quelques petits détails à améliorer (des print inutiles, utiliser htmlspecialchars($data['Nom']) au lieu de $data['Nom'], mieux prendre en compte l'erreur éventuelle ...).

n°327179
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 02:39:23  profilanswer
 

ok je vais encore améliorer ce code et après je passe à la suite.
 
Si ça intéresse, je le posterai une fois l'avoir amélioré.
 
mais tu rigoles, j'ai un problème tout bête je ne sais pas récupéré la valeur de mon value après être sélectionné.
 
C'est toujours des petits trucs qui me casse le plus les pieds

n°327183
mrbebert
Posté le 09-03-2003 à 02:56:03  profilanswer
 

Ton formulaire passe par un post (method="post" ) et le champ s'appelle "select". Tu peux récupérer sa valeur dans le script de réception par : $_POST['select']
Selon la configuration, tu peux aussi avoir une variable $select directement déclarée dans ton script, mais c'est le comportement de PHP 3 qui, à terme, disparaitra. Autant prendre de bonnes habitudes et passer par le tableau $_POST[] :)
 
edit : enfin, si c'est du PHP 3, je crois pas que le tableau $_POST[] existe. Dans ce cas, il faut utiliser directement la variable $select.


Message édité par mrbebert le 09-03-2003 à 02:57:30
n°327220
Profil sup​primé
Posté le 09-03-2003 à 04:15:45  answer
 

fermer la connection mysql apres le mysql_query aussi ce serait bien plutot ke d'attendre ke ce soit fait too seul ;)

n°327229
bossamiral​2
Ctrl+Alt+Del
Posté le 09-03-2003 à 05:03:03  profilanswer
 

j'ai déjà corrigé, mais merci par contre, j'ai un autre petit problème, je recupère la variable du select "choix". Mais je n'arrive pas à trouver l'ecriture correct pour ce bout de code.
 
 $sql='SELECT * FROM contact_tbl WHERE auto=.$choix';
il me sort une erreur sql a cause de l'écriture, je suis sur que c'est cette partie en rouge qui est fausse, mais je n'arrive pas a trouver la manière correcte de l'écrire.

n°327230
mrbebert
Posté le 09-03-2003 à 05:46:36  profilanswer
 

Si tu mets entre simple quote, il remplace pas le $choix. 2 possibilités :
$sql = 'SELECT * FROM contact_tbl WHERE auto=' . $choix;
$sql = "SELECT * FROM contact_tbl WHERE auto=$choix";


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Question bête on peut crée une liste comme cela

 

Sujets relatifs
[php] petite question qui me turlupine...question sur les liens
[python] Question conne du jourquestion sur conception objet
Question DirectX :)[php] question de chemin relatif
petite question pour le language htmlpb avec 2 liste
[HTML] question de balise[C,Allegro] Afficher la liste des repertoires contenus sur le disque
Plus de sujets relatifs à : Question bête on peut crée une liste comme cela


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR