Php mysql tableau probleme

Résolu
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009 - 26 nov. 2009 à 16:53
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009 - 28 nov. 2009 à 21:07
Bonjour tout le monde , j'ai un petit soucis , pour afficher ma base membre dans un tableau sur mon site .
Voila les champs de ma table
$id' ,'$email' ,'$pseudo' ,'$pass' ,'$passs' ,'$ville

J'arrive juste a afficher les 2 premiers


// Get all the data from the "example" table
$result =  mysql_query("SELECT * FROM membre") 
or die(mysql_error());  

echo "\";
echo \"----
 id  | email | email | pseudo | pass | \";
// keeps getting the next row until there are no more to get
while($row  = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo \"----
";
echo $row['email'];
echo ", ";
echo $row['pseudo'];
echo ", \";
echo $row['pass'];
echo \"</td>\";
echo $row['passs'];
echo \"</td>\";
echo $row['ville'];
}

echo "
";
?>

17 réponses

dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 19:28
Salut :)

Perso je préfère utiliser le FOR que le while

Voilas le genre requête que j utilise sur mes sites:
en début de page j effectue ma ou mes requête afin de noter mes réponse dans un tableau grâce a [$nb]

$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);
for($nb=0;$nb<$total;$nb++)
{
 $row = mysql_fetch_array($result);
 $id[$nb] = $row ["id"];
 $email[$nb] = $row ["email"];
 $pseudo[$nb] = $row ["pseudo"];
 $pass[$nb] = $row ["pass"];
 $ville[$nb] = $row ["ville"];
}


Ensuite je rappel les valeur de cette façon en relançant la boucle qui vas afficher un ligne par réponse :
///1ier ligne: les titre du tableau
echo "\";

echo \"----
\";
echo \"";
echo "ID";
echo ", \";
echo \"";
echo "PSEUDO";
echo ", \";
echo \"";
echo "EMAIL";
echo ", \";
echo \"";
echo "PASS";
echo ", \";
echo \"";
echo "VILLE";
echo ", \";
echo \"\";

///boucle qui génére une ligne par réponse trouvé
for($nb=0;$nb<$total;$nb++)
{
echo \"----
\";
echo \"";
echo "$id[$nb]";
echo ", \";
echo \"";
echo "$pseudo[$nb]";
echo ", \";
echo \"";
echo "$email[$nb]";
echo ", \";
echo \"";
echo "$pass[$nb]";
echo ", \";
echo \"";
echo "$ville[$nb]";
echo ", \";
echo \"\";
}

echo "
";


est ce bien ceci que tu cherchait a faire ?


--------------------------------------------------------------------------
Si vous m'avez compris, c'est que je me suis mal exprimé
3
dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
28 nov. 2009 à 15:08
Re, petite erreu de ma part ,
j'ai oublier la recup des info dans la boucle
Donc je vais reprendre te page cible.ph depuis le debut ;)

<?php

// Connexiion a l abase de données
mysql_connect("xxx", "xxx", "xxx") or die(mysql_error());
mysql_select_db("membre") or die(mysql_error());

//Recup du formulaire 
$pseudo=$_REQUEST['pseudo'];
$email=$_REQUEST['email'];
$pass=$_REQUEST['pass'];
$ville=$_REQUEST['ville'];

//insertion dans la base de données
mysql_query("INSERT INTO membre VALUES('','$email','$pseudo','$pass','$ville');");

//on réafiche les données
$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);

///1ier ligne: les titre du tableau
echo "\";
echo \"----
\";
echo \"";
echo "id";
echo ", \";
echo \"";
echo "pseudo";
echo ", \";
echo \"";
echo "email";
echo ", \";
echo \"";
echo "pass";
echo ", \";
echo \"";
echo "ville";
echo ", \";
echo \"\";

///boucle qui génère une ligne par réponse
for($nb=0;$nb<$total;$nb++)
{
$row = mysql_fetch_array($result);
$id = $row [\"id\"];
$email = $row [\"email\"];
$pseudo = $row [\"pseudo\"];
$pass = $row [\"pass\"];
$ville = $row [\"ville\"];

echo \"----
\";
echo \"";
echo "$id";
echo ", \";
echo \"";
echo "$pseudo";
echo ", \";
echo \"";
echo "$email";
echo ", \";
echo \"";
echo "$pass";
echo ", \";
echo \"";
echo "$ville";
echo ", \";
echo \"\";
}
echo "
";

//Fermeture de la base de données
mysql_close();
?>


Voila ceci devrais fonctionner correctement ;)
-----------------------------------------------------------------------
Si vous m'avez compris, c'est que je me suis mal exprimé
3
BaFM Messages postés 64 Date d'inscription mercredi 24 juillet 2002 Statut Membre Dernière intervention 26 novembre 2009
26 nov. 2009 à 16:59
Bonjour, tu devrais faire un var_dump des données lues pour vérifier les données lues.
Je te conseil aussi d'expliciter ta liste de champ dans la requête SQL.
De plus tu ferme plusieurs fois ta ligne de tableau HTML (</tr>). De même, tu ne réouvre pas tes td (<td>).
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 17:04
je suis débutant , je peux avoir un petit exemple merci , pourquoi mon exemple , marche juste pour 2 champs ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MasterCent Messages postés 83 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 14 décembre 2011 1
26 nov. 2009 à 17:34
Sauf erreur de ma part (j'écris de mémoire...) :

// pour chaque enregistrement :
while($row = mysql_fetch_assoc( $result )) {
// ouverture de ligne
echo "<tr>" ;
// pour chaque champ
foreach ( $row as $key=>$value ){
echo "<td>" . $value . "</td>" ;
}
// fermeture de ligne.
echo "</tr>";
}

Bon boulot !

mc
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 19:40
Merci a tous sa marche
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 19:55
J'ai encore un petit soucis au niveau de mon affichages
je récupères pas les donnés complète

Peux être probleme au niveau de ma base ?

voila

ID PSEUDO EMAIL PASS VILLE
139 t t 0 p
140 q q 0 q
138 a a 0 a
141 Q Q q Q
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 20:09
<?php
// Make a MySQL Connection
mysql_connect("xxxx", "xxxx", "xxxxx") or die(mysql_error());
mysql_select_db("membre") or die(mysql_error());

$result = mysql_query("SELECT * FROM membre") 
or die(mysql_error());  

$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);
for($nb=0;$nb<$total;$nb++)
{
 $row = mysql_fetch_array($result);
 $id[$nb] = $row ["id"];
 $email[$nb] = $row ["email"];
 $pseudo[$nb] = $row ["pseudo"];
 $pass[$nb] = $row ["pass"];
 $ville[$nb] = $row ["ville"];
}
///1ier ligne: les titre du tableau
echo "\";

echo \"----
\";
echo \"";
echo "id";
echo ", \";
echo \"";
echo "pseudo";
echo ", \";
echo \"";
echo "email";
echo ", \";
echo \"";
echo "pass";
echo ", \";
echo \"";
echo "ville";
echo ", \";
echo \"\";

///boucle qui génére une ligne par réponse trouvé
for($nb=0;$nb<$total;$nb++)
{
echo \"----
\";
echo \"";
echo "$id[$nb]";
echo ", \";
echo \"";
echo "$pseudo[$nb]";
echo ", \";
echo \"";
echo "$email[$nb]";
echo ", \";
echo \"";
echo "$pass[$nb]";
echo ", \";
echo \"";
echo "$ville[$nb]";
echo ", \";
echo \"\";
}

echo "
";


?>



Je récupère juste la première lettre ou chiffres dans le tableau

voila comment je récupère
id pseudo email pass ville
139 t t 0 p
140 q q 0 q
138 a a 0 a
141 Q Q q Q
142 d d d d
143 d d d d
144 z z z z
145 1 1 1 1
0
dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 20:13
Re,
essay de proceder de cette facon pour tester

$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);

for($nb=0;$nb<$total;$nb++)
{

 $row = mysql_fetch_array($result);
 $id = $row ["id"];
 $email = $row ["email"];
 $pseudo = $row ["pseudo"];
 $pass = $row ["pass"];
 $ville = $row ["ville"];

 echo "<tr>";
  echo "<td>";
   echo "$id";
  echo "</td>";
  echo "<td>";
   echo "$pseudo";
  echo "</td>";
  echo "<td>";
   echo "$email";
  echo "</td>";
  echo "<td>";
   echo "$pass";
  echo "</td>";
  echo "<td>";
   echo "$ville";
  echo "</td>";
 echo "</tr>";
}

echo "</table>";



--------------------------------------------------------------------
Si vous m'avez compris, c'est que je me suis mal exprimé
0
dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 20:15
pareil je pense que ceci ce sert a rien

$result = mysql_query("SELECT * FROM membre") 
or die(mysql_error());  



Si vous m'avez compris, c'est que je me suis mal exprimé
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
26 nov. 2009 à 21:49
<?php
// Make a MySQL Connection
mysql_connect("XXX", "XXX", "XXX") or die(mysql_error());
mysql_select_db("membre") or die(mysql_error());


$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);
for($nb=0;$nb<$total;$nb++)
{
 $row = mysql_fetch_array($result);
 $id = $row ["id"];
 $email = $row ["email"];
 $pseudo = $row ["pseudo"];
 $pass = $row ["pass"];
 $ville = $row ["ville"];
}
///1ier ligne: les titre du tableau
echo "\";

echo \"----
\";
echo \"";
echo "id";
echo ", \";
echo \"";
echo "pseudo";
echo ", \";
echo \"";
echo "email";
echo ", \";
echo \"";
echo "pass";
echo ", \";
echo \"";
echo "ville";
echo ", \";
echo \"\";

///boucle qui génére une ligne par réponse trouvé
for($nb=0;$nb<$total;$nb++)
{
echo \"----
\";
echo \"";
echo "$id";
echo ", \";
echo \"";
echo "$pseudo";
echo ", \";
echo \"";
echo "$email";
echo ", \";
echo \"";
echo "$pass";
echo ", \";
echo \"";
echo "$ville";
echo ", \";
echo \"\";
}

echo "
";


?>


Voila il marche comme ça merci
0
dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
27 nov. 2009 à 11:40
Oki parfait tu as changer quoi ?


---------------------------------------------------------------------
Si vous m'avez compris, c'est que je me suis mal exprimé
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
27 nov. 2009 à 20:04
Voila j'ai poster tout mon code dolux64100 , merci pour ton aide

Formulaire inscription




email |
,

----

pseudo |
,

----

mot de passe |
,

----

mot de passe |
,

----

ville |












Insertion des donnés dans la table
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
27 nov. 2009 à 20:41
Pour faire un test
http://devile.coding.free.fr/
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
27 nov. 2009 à 23:42
Voila j'ai une nouvel erreur dans mon tableau au niveau de l'affichage



<?php
mysql_connect("xxx", "xxx", "xxx"); // Connexion à MySQL
mysql_select_db("xxx"); // Sélection de la base devile.coding


 // On ajoute une entrée avec mysql_query REQUETTE

mysql_query("INSERT INTO membre VALUES( '$id' ,'$email' ,'$pseudo' ,'$pass' ,'$passs' ,'$ville');");

  // On ajoute une entrée avec mysql_query REQUETTE

 mysql_close();   //on ferme conexion sql
 
?>
RECUPERE LES INFOS 
<?php
// Make a MySQL Connection
mysql_connect("xxx", "xxx", "xxx") or die(mysql_error());
mysql_select_db("membre") or die(mysql_error());

$result = mysql_query("SELECT * FROM membre") 
or die(mysql_error());  

$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);
for($nb=0;$nb<$total;$nb++)
{
 $row = mysql_fetch_assoc($result);
 echo "<tr>" ; 
 $id[$nb] = $row ["id"];
 $email[$nb] = $row ["email"];
 $pseudo[$nb] = $row ["pseudo"];
 $pass[$nb] = $row ["pass"];
 $ville[$nb] = $row ["ville"];
 echo "</tr>"; 
}
///1ier ligne: les titre du tableau
echo "\";

echo \"----
\";
echo \"";
echo "id";
echo ", \";
echo \"";
echo "pseudo";
echo ", \";
echo \"";
echo "email";
echo ", \";
echo \"";
echo "pass";
echo ", \";
echo \"";
echo "ville";
echo ", \";
echo \"\";

///boucle qui génére une ligne par réponse trouvé
for($nb=0;$nb<$total;$nb++)
{
echo \"----
\";
echo \"";
echo "$id";
echo ", \";
echo \"";
echo "$pseudo";
echo ", \";
echo \"";
echo "$email";
echo ", \";
echo \"";
echo "$pass";
echo ", \";
echo \"";
echo "$ville";
echo ", \";
echo \"\";
}

echo "
";


?>



RECUPERE LES INFOS
id pseudo email pass ville
Array dd dcolatine dd dcolatine63360@hotmail.fr tt2t2103 pppps
Array dd dcolatine dd dcolatine63360@hotmail.fr tt2t2103 pppps
Array dd dcolatine dd dcolatine63360@hotmail.fr tt2t2103 pppps
Array dd dcolatine dd dcolatine63360@hotmail.fr tt2t2103 pppps

Sa me fait n'importe quoi
0
dolux64100 Messages postés 18 Date d'inscription dimanche 15 novembre 2009 Statut Membre Dernière intervention 28 novembre 2009
28 nov. 2009 à 11:57
Re bonjour,

L'insert dans ta base de données est réalisé sans souci ?

Si oui et que ton problèmes est uniquement au réaffichage ,
essai ceci

<?php
// Make a MySQL Connection
mysql_connect("xxx", "xxx", "xxx") or die(mysql_error());
mysql_select_db("membre") or die(mysql_error());

 // On ajoute une entrée avec mysql_query REQUETTE

mysql_query("INSERT INTO membre VALUES( '$id' ,'$email' ,'$pseudo' ,'$pass' ,'$passs' ,'$ville');");

RECUPERE LES INFOS 

$select = "SELECT * FROM membre";
$result= mysql_query($select);
$total = mysql_num_rows($result);

///1ier ligne: les titre du tableau
echo "\";

echo \"----
\";
echo \"";
echo "id";
echo ", \";
echo \"";
echo "pseudo";
echo ", \";
echo \"";
echo "email";
echo ", \";
echo \"";
echo "pass";
echo ", \";
echo \"";
echo "ville";
echo ", \";
echo \"\";

///boucle qui génére une ligne par réponse trouvé
for($nb=0;$nb<$total;$nb++)
{
echo \"----
\";
echo \"";
echo "$id";
echo ", \";
echo \"";
echo "$pseudo";
echo ", \";
echo \"";
echo "$email";
echo ", \";
echo \"";
echo "$pass";
echo ", \";
echo \"";
echo "$ville";
echo ", \";
echo \"\";
}

echo "
";


?>





--------------------------------------------------------------------
Si vous m'avez compris, c'est que je me suis mal exprimé
0
cs_toto6311 Messages postés 62 Date d'inscription jeudi 4 mai 2006 Statut Membre Dernière intervention 28 novembre 2009
28 nov. 2009 à 21:07
Le probleme est régler grâce a toi dolux64100

Je te remercie d'avoir pris le temps pour m 'aider
j'ai compris le soucis , merci 1000 fois tout marche nikel
0
Rejoignez-nous