Meeuuh Posté 27 Janvier 2009 Partager Posté 27 Janvier 2009 Bonjour, comme dans mon précédent sujet, j'essaye de transformer mes pages dynamiques en statiques. J'ai trouvé une technique avec ob_start() qui fonctionne très bien mais j'aimerais automatiser la création des pages. J'avais pensé avec un petit formulaire qui me permet de recréer les pages que j'ai envie avec un checkbox mais comme je me débrouille pas trop avec les formulaires, j'arrive juste à créer la dernière page sélectionné dans mon formulaire et non toutes celles avant. <form action="createtest.php" method="post"> <select name="category"> <option>test1</option><option>test2</option></select><select name="group"> <option>photos</option><option>videos</option></select>page 1 : <input type="checkbox" value="1" name="page"><br />page 2 : <input type="checkbox" value="2" name="page"><br />page 3 : <input type="checkbox" value="3" name="page"><br />page 4 : <input type="checkbox" value="4" name="page"><br /><input type="submit" /></form> Je récupère les variables avec $_POST. Si je sélectionne, par exemple, toutes les pages, j'arrive juste à créer la page 4 et pas les autres avant. Je suppose que c'est un problème de loop mais je comprend pas comment l'implanter. Merci pour toute aide car je suis perdu la . Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 27 Janvier 2009 Partager Posté 27 Janvier 2009 Il faudrait que tu postes un bout du code que tu utilises pour faire ta boucle. Sans ça, on ne peut pas voir où tu bloques. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Meeuuh Posté 27 Janvier 2009 Auteur Partager Posté 27 Janvier 2009 (modifié) <?php ob_start()include 'connect.inc.php';$page = $_POST['page'];$categoryid = $_POST['category'];$groupid = $_POST['group'];$max_results = 40;$from = (($page * $max_results) - $max_results); $query = mysql_query("SELECT tl.*, tc.enabled, tc.ID FROM st_galleries tl LEFT JOIN st_galleries_1 tc ON tl.ID = tc.ID WHERE tl.category = '$categoryid' AND tl.groupid = '$groupid' AND tc.enabled = '1' ORDER BY tl.id DESC LIMIT $from, $max_results") OR die(mysql_error());$resultcount = mysql_num_rows($query);$inputstringunres = "SELECT tl.id, tc.id FROM st_galleries tl LEFT JOIN st_galleries_1 tc ON tl.ID = tc.ID WHERE category = '$categoryid' AND groupid = '$groupid' AND tc.enabled = '1'" OR die(mysql_error());$selectunres = mysql_query($inputstringunres);$resultcountunres = mysql_num_rows($selectunres);$total_results = $resultcountunres;$total_pages = ceil($total_results / $max_results); $a=0;?>Un peut de html ...<?phpwhile ($donnees = mysql_fetch_array($query) ){?><div class="photos">Code qui me permet de créer 40 thumbs comme annoncé avec $max_results</div><?php++$a;}?><div id="pagination"><?phpif($page > 1){ $prev = ($page - 1); echo "<a href=\"$prev.html\">< Previous</a> "; } for($i = 1; $i <= $total_pages; $i++){ if(($page) == $i){ echo "Page $i "; } else { echo "<a href=\"$i.html\"> $i</a> "; } } if($page < $total_pages){ $next = ($page + 1); echo "<a href=\"$next.html\">Next ></a>"; } mysql_close($connectdb) ?><?php $ob = ob_get_contents(); ob_end_clean(); $cwd = getcwd(); $file = "$cwd" .'/'. "$groupid/$categoryid/$page.html"; _AT_chmod($file,0755); $fw = fopen($file, "w"); fputs($fw,$ob, strlen($ob)); fclose($fw); die();?> Bien sur entre les ?> <?php il y a du HTML pour formater ma page mais en gros c'est ça. Modifié 27 Janvier 2009 par Meeuuh Lien vers le commentaire Partager sur d’autres sites More sharing options...
Meeuuh Posté 28 Janvier 2009 Auteur Partager Posté 28 Janvier 2009 Pour finir j'ai trouvé en utilisant cURL. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Xethorn Posté 30 Janvier 2009 Partager Posté 30 Janvier 2009 Salut, C'est un peu logique ... $page = $_POST['page']; Correspond à un checkbox et un checkbox ne peut avoir qu'une seule et unique valeur. Transforme ton code html par : page 1 : <input type="checkbox" value="1" name="page[]"><br />page 2 : <input type="checkbox" value="2" name="page[]"><br />page 3 : <input type="checkbox" value="3" name="page[]"><br />page 4 : <input type="checkbox" value="4" name="page[]"><br /> Ensuite fais un var_dump($_POST['page']). Regardes la structure des résultats et comment tu peux les gérer. Bon courage Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant