Tableau php

Fermé
exiled Messages postés 5 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 26 juin 2009 - 22 juin 2009 à 10:39
 biboo - 22 juin 2009 à 13:38
Bonjour,
Voila alors j'ai besoin de faire un tableau php dans le cadre d'un stage informatique mais j'ai un petit souci, le tableau php doit afficher toutes les données d'une table sus mysql le probleme c'est que le tableau peut donc a un moment donner avoir 10 000 lignes et ne pas tenir sur une page , je voulais donc le découper en partie de 10 sur le tableau , afficher les 10 premieres données et ensuite des liens en dessous du tableau pour aller au 10 lignes suivantes genre "premiere page 1 2 3 ....... 45 49 derniere page", je n'ai pas vraiment d'idée pour faire cela si vous pouvez m'aider oici le bout de code concerné.

<table class="table">
<tr><td class="td2">N° Demande</td><td class="td2">Date Demande</td>
<td class="td2">Description de le demande</td><td class="td2">Personne chargée</td>
<td class="td2">N° collège</td><td class="td2">N° type demande</td>
<td class="td2">N° réponse</td><td class="td2">Modifier</td>
<td class="td2"><button type=submit name="supprimerdemande"><img src="supprimer.jpg"></button></td></tr>
<?Php
$i=0;
while($ligne = mysql_fetch_row($result)) {
$i=$i+1;
$numdemande=$ligne[0];
$datedemande=$ligne[1];
$description=$ligne[2];
$personne=$ligne[3];
$numrne=$ligne[4];
$numtype=$ligne[5];
$numreponse=$ligne[6];
?>
<tr><td class="td"><?php echo "<h5>".$numdemande."</h5>"; ?></td>
<td class="td"><input style="background:#E6E6FA" type="text" name="datedemande2<?Php echo $numdemande; ?>" size=7 value="<?Php echo $datedemande; ?>"></td>
<td class="td"><TEXTAREA style="background:#E6E6FA" NAME="description2<?Php echo $numdemande; ?>" ROWS=2 COLS=16><?Php echo $description; ?></TEXTAREA></td>
<td class="td"><input style="background:#E6E6FA" type="text" name="personnechargee2<?Php echo $numdemande; ?>" size=7 value="<?Php echo $personne; ?>"></td>
<td class="td"><input style="background:#E6E6FA" type="text" name="numrne2<?Php echo $numdemande; ?>" size=7 value="<?Php echo $numrne; ?>"></tD>
<td class="td"><input style="background:#E6E6FA" type="text" name="numtype2<?Php echo $numdemande; ?>" size=6 value="<?php echo $numtype; ?>"></td>
<td class="td"><input style="background:#E6E6FA" type="text" name="numreponse2<?Php echo $numdemande; ?>" size=6 value="<?Php echo $numreponse; ?>"></td>
<td class="td"><input type=submit value="modifier" name="modifierdemande<?Php echo $numdemande; ?>"></td>
<td class="td"><input type=checkbox value="supprimer" name="dde<?Php echo $numdemande; ?>"></td></tr>
<?php
}
}
else {
echo "Erreur de requête de base de données.";
}
echo $i;

?>

<tr><td></td><td><input type=text name="datedemande" value="aaaa-mm-jj" size=8></td>
<td><input type=text name="descriptiondemande" size=21></td>
<td><input type=text name="personnechargee"size=10></td>
<td><input type=text name="numRNE"size =8></td>
<td><input type=text name="numtype"size =6></td>
<td><input type=text name="numreponse" size=6></td>
<td colspan=2><input type=submit value="Enregistrer la demande" name="enregistrerdemande"></td></tr>
</table>

j'ai mi la variable $i dans le while afin de compter les lignes pour faire kkchose qui n'a pas abouti je voulais monter i jusqu'a 10 ensuite il retombe a 0 pour incrémenter une autre variable et passer sur une page suivante mais je n'arrives pas a faire fonctionne.
A voir également:

2 réponses

eee.eee Messages postés 69 Date d'inscription samedi 12 janvier 2008 Statut Membre Dernière intervention 15 septembre 2009 20
22 juin 2009 à 12:27
Et tu peux pas utiliser tout simplement une boucle for($i=$_session['var']; i<$_session['var']+10; $i++) sur 10 valeurs? En gros
Puis tu enregistre ta variable dans une variable session pour récupérer l'avancement dans ton tableau
0
C'est une solution, mais ce n'est pas la meilleure! :)
0
En SQL, il faut que tu utilises la clause "LIMIT".
Exemple :
SELECT * FROM LIMIT X, Y


LIMIT X, Y veut dire que tu choisis les resultats a partir de la ligne X+1 et que tu affiches Y resultats.

Il suffit de passer dans l'url le numero de la page, et tu l'utilises pour initialiser X et Y.
Bon courage. :)
0