Probleme Tableau dynamique php

Fermé
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009 - 21 juin 2009 à 06:32
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009 - 25 juin 2009 à 11:49
Bonjour, je voudrais realiser un tableau dynamique php à partir d'une base de donnees myql
dans mon script le resultat prenom s'affiche dans chaque cellule.
Je voudrais que les prenoms descendent d'une cellule chaque jour a fin qu'une rotation soit effectué.
donc si quelqu'un pouvait m'aider ou me mettre sur une piste !!!


<html>
<body>
<?php
// information pour la connection à le DB
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'test';

// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());

// requête SQL qui compte le nombre total d'enregistrements dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT prenom FROM vaches';
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);


// si on a récupéré un résultat on l'affiche.
if($total) {
// début du tableau
echo '<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les titres prénom et surnom dans 2 colonnes

// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td bgcolor="#CCCCCC">'.$row['prenom'].'</td>';
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($result);

?>
</body>
</html>
A voir également:

32 réponses

jeremieca Messages postés 178 Date d'inscription lundi 9 juillet 2007 Statut Membre Dernière intervention 16 mars 2015 28
22 juin 2009 à 22:10
Attends, je m'en occupe, t'inquiète pas je t'oublie pas :).
0
jeremieca Messages postés 178 Date d'inscription lundi 9 juillet 2007 Statut Membre Dernière intervention 16 mars 2015 28
22 juin 2009 à 22:16
Bien, remplace ça :

echo '<table bgcolor="#FFFFFF">'."\n"; 
while($rep3 = mysql_fetch_array($req3)){
       echo '<tr>';
       echo '<td bgcolor="#CCCCCC">'.$rep3['prenom'].'</td><td bgcolor="#CCCCCC"></td><td bgcolor="#CCCCCC"></td>';
       echo '</tr>'."\n"; 
}
echo '</table>'."\n"; 


Par :

$i=1;
echo '<table bgcolor="#FFFFFF">'."\n"; 
while($rep3 = mysql_fetch_array($req3)){

	if($i==1){
		echo '<tr>';
	}    
    echo '<td bgcolor="#CCCCCC">'.$rep3['prenom'].'</td>';
	if($i==3){
		echo '</tr>'."\n"; 
		$i=1;
	} 

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


Et si ça marche je m'appelle Cresus (j'ai pas pu tester c'est pour ça). En cas d'erreur dis la moi.

A pluuuusss !
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
22 juin 2009 à 23:29
merci de ton aide c'est presque bon j'ai modifié les variables car l'affichage n'etait pas bon
pour un tableau de 3 lignes sur 4 colones j'ai la cellule en haut a droite qui n'est jamais occupé .

$req3 = mysql_query('SELECT*FROM compte ORDER BY ordre LIMIT 0,12');

$i=3;
echo '<table bgcolor="#930204">'."\n";
while($rep3 = mysql_fetch_array($req3)){

if($i==12){
echo '<tr>';
}
echo '<td bgcolor="#CCCCCC">'.$rep3['galleries'].'</td>';
if($i==4){
echo '</tr>'."\n";
$i=1;
}

$i++;
}
echo '</table>'."\n";
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
23 juin 2009 à 10:10
C'est pas mal mais avec tes valeurs l'affichage n'etait pas terrible.
J'ai bidoullé les valeurs sans trop comprendre le raisonement de la condition et j'ai toujours un petit soucis dans l'affichage

pour un tableau de 3 lignes sur 4 colones j'ai la cellule en haut a droite qui n'est jamais occupé .

$req3 = mysql_query('SELECT*FROM compte ORDER BY ordre LIMIT 0,12');

$i=3;
echo '<table bgcolor="#930204">'."\n";
while($rep3 = mysql_fetch_array($req3)){

if($i==12){
echo '<tr>';
}
echo '<td bgcolor="#CCCCCC">'.$rep3['prenom'].'</td>';
if($i==4){
echo '</tr>'."\n";
$i=1;
}

$i++;
}
echo '</table>'."\n";
0

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

Posez votre question
jeremieca Messages postés 178 Date d'inscription lundi 9 juillet 2007 Statut Membre Dernière intervention 16 mars 2015 28
23 juin 2009 à 18:00
Oula, je rentre et je regarde ton truc, tu dois avoir de jolie fautes dans l'HTML avec ça. Tu me m'envoyer le code source HTML généré par ça stp :)

Merci à pluss
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
23 juin 2009 à 18:31
Salut voici le code HTML

<table bgcolor="#930204">
<td bgcolor="#CCCCCC">jimmy</td><td bgcolor="#CCCCCC">yan</td></tr>
<td bgcolor="#CCCCCC">gaby</td><td bgcolor="#CCCCCC">dany</td><td bgcolor="#CCCCCC">olivier</td></tr>
<td bgcolor="#CCCCCC">gilles</td><td bgcolor="#CCCCCC">jamy</td><td bgcolor="#CCCCCC">mathieu</td></tr>
<td bgcolor="#CCCCCC">sylvain</td><td bgcolor="#CCCCCC">jean michel</td><td bgcolor="#CCCCCC">lucas</td></tr>
<td bgcolor="#CCCCCC">yanis</td></table>
0
jeremieca Messages postés 178 Date d'inscription lundi 9 juillet 2007 Statut Membre Dernière intervention 16 mars 2015 28
23 juin 2009 à 19:21
C'est complètement faux, et c'est normal... Bref

Si tu en veux 4 par lignes je pense que c'est ça :

$i=1;
echo '<table bgcolor="#FFFFFF">'."\n"; 
while($rep3 = mysql_fetch_array($req3)){

	if($i==1){
		echo '<tr>';
	}    
    echo '<td bgcolor="#CCCCCC">'.$rep3['prenom'].'</td>';
	if($i==4){
		echo '</tr>'."\n"; 
		$i=1;
	} 

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


Et ça doit marcher, tu me passe le code HTML que ce truc si génère s'il te plait :)

A pluus !
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
23 juin 2009 à 19:24
nan c pas bon

<table bgcolor="#FFFFFF">
<tr><td bgcolor="#CCCCCC">lucas</td><td bgcolor="#CCCCCC">yanis</td><td bgcolor="#CCCCCC">jimmy</td><td bgcolor="#CCCCCC">yan</td></tr>
<td bgcolor="#CCCCCC">gaby</td><td bgcolor="#CCCCCC">dany</td><td bgcolor="#CCCCCC">olivier</td></tr>
<td bgcolor="#CCCCCC">gilles</td><td bgcolor="#CCCCCC">jamy</td><td bgcolor="#CCCCCC">jean michel</td></tr>
<td bgcolor="#CCCCCC">sylvain</td><td bgcolor="#CCCCCC">mathieu</td></table>
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
23 juin 2009 à 19:34
en tout cas merci encore
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
23 juin 2009 à 22:04
Nan c pas bon

<table bgcolor="#FFFFFF">
<tr><td bgcolor="#CCCCCC">lucas</td><td bgcolor="#CCCCCC">yanis</td><td bgcolor="#CCCCCC">jimmy</td><td bgcolor="#CCCCCC">yan</td></tr>
<td bgcolor="#CCCCCC">gaby</td><td bgcolor="#CCCCCC">dany</td><td bgcolor="#CCCCCC">olivier</td></tr>
<td bgcolor="#CCCCCC">gilles</td><td bgcolor="#CCCCCC">jamy</td><td bgcolor="#CCCCCC">jean michel</td></tr>
<td bgcolor="#CCCCCC">sylvain</td><td bgcolor="#CCCCCC">mathieu</td></table>
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
24 juin 2009 à 12:10
Bonjour, c'est curieux j'ai inversé les <tr> et <td> et le resultat est tres curieux sur IE7 ca ne fonctionne pas (affichage sur une colonne) par contre sur Mozilla et Netscape ca marche impecable il y a une raison a cela ?
0
jeremieca Messages postés 178 Date d'inscription lundi 9 juillet 2007 Statut Membre Dernière intervention 16 mars 2015 28
24 juin 2009 à 20:03
MDR J'ai trouvé !!!!!!!!!!!!

Quasi sur que ça marchera, c'était une erreur con évidente avec ton HTML :

$i=1;
echo '<table bgcolor="#FFFFFF">'."\n"; 
while($rep3 = mysql_fetch_array($req3)){

	if($i==1){
		echo '<tr>';
	}    
    echo '<td bgcolor="#CCCCCC">'.$rep3['prenom'].'</td>';
	if($i==4){
		echo '</tr>'."\n"; 
		$i=0;
	} 

$i++;
}
echo '</table>'."\n"; 
0
jamstyle Messages postés 27 Date d'inscription dimanche 21 juin 2009 Statut Membre Dernière intervention 23 juillet 2009
25 juin 2009 à 11:49
Merci un milliard de fois des que je mets mon site ligne je te relance pour tu vois ton lien merci encore !!!
0