Pagination formulaire

raouen Messages postés 24 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 juin 2011 - 10 mai 2011 à 21:17
raouen Messages postés 24 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 juin 2011 - 11 mai 2011 à 13:58
je suis entrain de travailler avec un système de pagination simple que je l'applique pour afficher une liste de formulaire de ma table mysql ;il m'affiche ce que je veux et pas d'erreurs mais dans ma page je dois faire une button précédente qui m'envoye vers la page précédente:
et je sais pas quoi ecrire pour quelle m'envoie sur ce que je veux selon mon système de pagination
et une button submit pour chaque formulaire (je travaille avec les sessions pour stocker les valeurs de chaque page):
<form method="post" action="???" />(je sais pas comment faire ici) aussi > ' name='move2' />
j'essais avec les liens suivant et précédent et ca fonctionne avec un petit test sur les pages mais je besoin de buttons pour mon formulaire et la récupération de valeurs de chaque page de pagination .
if( isset($_GET['page']) && is_numeric($_GET['page']) )

    $page = $_GET['page'];

else

    $page = 1;

// Nombre d'info par page

$pagination = 7;

// Numéro du 1er enregistrement à lire

$limit_start = ($page - 1) * $pagination;

// Préparation de la requête

$sql = "SELECT * FROM question WHERE id_categorie='1' LIMIT $limit_start, $pagination";

// Requête SQL

$resultat = mysql_query($sql);

// Traitement et affichage des données
// Nb d'enregistrement total

$nb_total mysql_query('SELECT COUNT(*) AS id_question FROM question WHERE id_categorie 1 ');

$nb_total = mysql_fetch_array($nb_total);

$nb_total = $nb_total['id_question'];

 

// Pagination

$nb_pages = ceil($nb_total / $pagination);

//le reste de code html

4 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
11 mai 2011 à 10:34
bonjour


<form method="post" action="">





/**/


</form>

a++

Bonne programmation !
0
raouen Messages postés 24 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 juin 2011
11 mai 2011 à 11:35
bonjour
merci pour votre proposition
le nom de ma page de pagination est utilisation_individuelle donc j'ai remplacer dans le code proposé :

<form method="post" action="">






</form>
mais rien n'ajouter quand je clique sur les buttons il faut quoi mettre onclick="JavaScript:window.open('utilisation_individuelle.php?page=?','_self');dans cette partie???
et Merciiiiiiiiii
a++++
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
11 mai 2011 à 13:16
essaie si ta pagination fonctionne

<?php

if( isset($_GET['page']) && is_numeric($_GET['page']) ) 

echo $page = $_GET['page']; 

else 

$page = 1; 

// Nombre d'info par page 

$pagination = 7; 

// Numéro du 1er enregistrement à lire 

$limit_start = ($page - 1) * $pagination; 

// Préparation de la requête 

$sql = "SELECT * FROM question WHERE id_categorie='1' LIMIT $limit_start, $pagination"; 

// Requête SQL 

$resultat = mysql_query($sql); 

// Traitement et affichage des données 
// Nb d'enregistrement total 

$nb_total mysql_query('SELECT COUNT(*) AS id_question FROM question WHERE id_categorie 1 '); 

$nb_total = mysql_fetch_array($nb_total); 

$nb_total = $nb_total['id_question']; 



// Pagination 

$nb_pages = ceil($nb_total / $pagination); 

//le reste de code html 

?>

<form method="get" action=""> 

','_self');"  value="PAGE PRECEDENTE"> 

','_self');"  value="PAGE SUIVANTE"> 

</form>




Bonne programmation !
0
raouen Messages postés 24 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 juin 2011
11 mai 2011 à 13:58
ouiiiiiiiiiiiii merci il me bascule entre mes pages mais dommage j'ai toujours un truc qui me bloque je veux quand il arrive a la drenire page et je clique sur le button suivant il m'envoie ver une page de soumission qui n'apartien pas au systeme de pagination et labas se fait le traitement de donné récupérer par les sessions et l'enregistrement dans la base .
au début de ma page de pagination je met
<?php

session_start();
$nb_questions[0]= "";

for($i=1;$i<=$nb_questions[0];$i++){
if(isset($_GET['question' . $i]) )
{
  $_SESSION['question' . $i]= $_GET['question' . $i];
  echo $_SESSION['question' . $i];
  
}
}
?>

<?php
// Numero de page (1 par défaut)

$db_host="localhost";
$db_username="root";
$db_name="navigateursweb";
$db_password="";

          
        //Connexion à la BDD  
        $connect = mysql_connect($db_host,$db_username,$db_password) or die("Erreur de connexion au serveur");
mysql_select_db($db_name,$connect) or die("Erreur de connexion à la base de données");

if( isset($_GET['page']) && is_numeric($_GET['page']) )

    $page = $_GET['page'];

else

    $page = 1;

// Nombre d'info par page

$pagination = 7;

// Numéro du 1er enregistrement à lire

$limit_start = ($page - 1) * $pagination;

// Préparation de la requête

$sql = "SELECT * FROM question WHERE id_categorie='1' LIMIT $limit_start, $pagination";

// Requête SQL

$resultat = mysql_query($sql);

// Traitement et affichage des données



while ( $donnee = mysql_fetch_assoc($resultat) ) {
echo"
";
echo"\";

echo\"----
\";

echo\"";

echo"<table width='100%' cellspacing='0'>";

echo"----
";

echo", \";

echo\" <label for='5X21X73'>\".$donnee['libelle_quest'].\" (\".$donnee['remarques'].\")</label>\";

echo\"\";
echo\"----
\";

echo\"";
$query_rep  = "SELECT *
FROM reponse
WHERE id_question = ".$donnee['id_question']." ORDER BY id_question";
$result = mysql_query($query_rep) OR die("Erreur");
echo"<table class='question'>";

while ( $reponse = mysql_fetch_array($result) )
{
echo"----
";
echo",  </td>\";
echo\"";
if($donnee['type']=="Multichoix")
{
echo"";
echo"<label class=\"answertext\">".$reponse['libelle_rep']."</label>";
echo "
";
}
else if($donnee['type']=="choix unique")
{
echo "";
echo $reponse['libelle_rep']."
";

}

}//fin while reponses
if($donnee['type']=="champs texte")
echo"";
else if($donnee['type']=="textarea")
{
echo "< textarea type=\"textarea\" name=\"question".$donnee['id_question']."\" rows=\"5\" cols=\"40\"/>";
}echo "
";
echo", \";
echo\", \";
echo\"\";
echo"
";
echo"</td>";

echo"</tr>";

echo"<tr>";

echo"<td align='center' bgcolor='#E5F9FF'>";

echo"";
     
echo"</td>";

echo"</tr>";

echo"</table>";

echo"</td>";


echo"</tr>";

echo"</table>";

echo"\";

echo\"----
\";

echo\", \";

echo\"\";

echo"
";
echo"
";

//fin while question
                  


    /* ICI VOTRE CODE NORMAL */
    /* Affichage d'un élément */
}

// Nb d'enregistrement total

$nb_total mysql_query('SELECT COUNT(*) AS id_question FROM question WHERE id_categorie 1 ');

$nb_total = mysql_fetch_array($nb_total);

$nb_total = $nb_total['id_question'];

 

// Pagination

$nb_pages = ceil($nb_total / $pagination);
            //Si il n'y a pas plus d'une page on renvoit rien...  

<form method="get" action=""> <!--ici je doid mettre l'envoie vers mon fichier traitementform.php -->

','_self');"  value="PAGE PRECEDENTE"> 

','_self');"  value="PAGE SUIVANTE"> 

</form>

car je fais la soumission que a la fin (apré remplisagae de tout les question dans toutes les pages.
Merci
a++++
0
Rejoignez-nous