formulaiare dynamique et pagination

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : formulaiare dynamique et pagination

Re: formulaiare dynamique et pagination

par raouen » 15 mai 2011, 13:32

bonjour tout le monde !
j'ai corriger le problème de boucle a l'infinie des buttons
<form method="get" action="<?php echo $_SERVER["PHP_SELF"];?>">
<input type="hidden" name="page" value="<?php if(($_GET['page']+1)<= ($nb_pages+1)) echo ($_GET['page']+1); else{"disabled";} ?>">
<input type="submit" name="BT1" value="PAGE SUIVANTE">
</form>
</td><td>
<form method="get" action="<?php echo $_SERVER["PHP_SELF"];?>">
<input type="hidden" name="page"  value="<?php 
if(($_GET['page']-1)>1) echo ($_GET['page']-1); ?>">
<input type="submit" name="BT2" value="PAGE PRECEDENTE">
</form>
quelq'un peut m'aider pour le problème des variables en sessions il ne récupère po ce que je saiasie ou je coche dans les buttons radio quand j'affiche par print_r($_SESSION); juste je trouve: Array ( [submit] => suivant >> ) de la premiere page de site qui m'envoie vers la pagination !!!
Merci :cry:

formulaiare dynamique et pagination

par raouen » 14 mai 2011, 21:34

bonsoir
j'arrive pas a corriger ce code pour rendre les button suivant et précédent ne boucle pas a l'infinie et rendre les sessions active c'est a dire je récupère mes valeurs car je sais pas utiliser
session_start();
foreach($_POST as $k => $v){
$_SESSION[$k]=$v;
}

Code : Tout sélectionner

<?php session_start(); foreach($_POST as $k => $v){ $_SESSION[$k]=$v; } /* $nb_questions[0]=""; for($i=1;$i<=$nb_questions[0];$i++){ if(isset($_POST['question' . $i])){ $_SESSION['question' . $i]= $_POST['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"); $sql = "SELECT * FROM question WHERE id_categorie='1'"; $resultat = mysql_query($sql); $count=mysql_num_rows($resultat);/*pour afficher le dernier form*/ if(isset($_GET['page']) && is_numeric($_GET['page']) && (int)$_GET['page'] > 0){ $page = $_GET['page']; }else{ $page=1; } $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 // Nombre d'info par page $pagination = 7; // Numéro du 1er enregistrement à lire $limit_start = ($page - 1) * $pagination; $nb_pages = ceil($nb_total / $pagination); ?> <table align="center"> <tr><td> <form method="get" action="<?php echo $_SERVER["PHP_SELF"];?>"> <input type="hidden" name="page" value="<?php echo ($_GET['page']+1); ?>"> <input type="submit" name="BT1" value="PAGE SUIVANTE"> </form> </td><td> <form method="get" action="<?php echo $_SERVER["PHP_SELF"];?>"> <input type="hidden" name="page" value="<?php echo ($_GET['page']-1); ?>"> <input type="submit" name="BT2" value="PAGE PRECEDENTE"> </form> </td></tr> </table> <?php echo '<h1>'.$page .'</h1>'; if($limit_start<=$count){ // 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"<div id='question73'>"; echo"<table width='75%' align='center' border='1' style='border-collapse: collapse' bordercolor='#0099CC' bgcolor='white'>"; echo"<tr>"; echo"<td align='center'>"; echo"<table width='100%' cellspacing='0'>"; echo"<tr>"; echo"<td align='center' bgcolor='#E5F9FF'>"; echo"<font size='2' color='#0033CC'><b><label for='5X21X73'>".$donnee['libelle_quest']."</br><font size='2' color='#0099FF'>(".$donnee['remarques'].")</i><b/></label>"; echo"</tr>"; echo"<tr>"; echo"<td align='center'>"; $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"<tr>"; echo"<td>&nbsp;</td>"; echo"<td align='left' class='answertext'>"; if($donnee['type']=="Multichoix") { echo"<input type=\"checkbox\" name=\"question".$donnee['id_question']."[]\"value=\"".$reponse['libelle_rep']."\" />"; echo"<label class=\"answertext\">".$reponse['libelle_rep']."</label>"; echo "<br />"; } else if($donnee['type']=="choix unique") { echo "<INPUT TYPE=\"radio\" NAME=\"question".$donnee['id_question']."\" VALUE=\"".$reponse['libelle_rep']."\""; if(isset($_SESSION['question' . $donnee['id_question']]) AND $_SESSION['question' . $donnee['id_question']]===$reponse['libelle_rep']) {echo "checked";} echo "/>"; echo $reponse['libelle_rep']."<BR>"; } }//fin while reponses if($donnee['type']=="champs texte") echo"<td align=\"center\"/><input type=\"text\" class=\"text\" name=\"question".$donnee['id_question']."\" size=\"8\"/>"; else if($donnee['type']=="textarea") { echo "<td align=\"center\"/><textarea name=\"question".$donnee['id_question']."\" class=\"textarea\" rows=\"5\" cols=\"40\"></textarea>"; }echo "<br />"; echo"</td>"; echo"<td>&nbsp;</td>"; echo"</tr>"; echo"</table>"; echo"</td>"; echo"</tr>"; echo"<tr>"; echo"<td align='center' bgcolor='#E5F9FF'>"; echo"<font size='1'></font>"; echo"</td>"; echo"</tr>"; echo"</table>"; echo"</td>"; echo"</tr>"; echo"</table>"; echo"<table>"; echo"<tr>"; echo"<td height='1'></td>"; echo"</tr>"; echo"</table>"; echo"</div>"; //fin while question /* ICI VOTRE CODE NORMAL */ /* Affichage d'un élément */ } // Nb d'enregistrement total }else{ echo '<pre>'; print_r($_SESSION); echo '</pre>'; $inputhidden=""; foreach($_SESSION as $k => $v){ $inputhidden.='<input type="hidden" name="'.$k.'" value="'.$v.'" />'; } echo '<form method="post" action="essai.php"> '.$inputhidden.' <input type="submit" value="traitement"> </form>'; //fin } ?>