[RESOLU] Pagination avec ajax

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 : [RESOLU] Pagination avec ajax

Re: Pagination avec ajax

par ps6c0tic » 23 juil. 2013, 13:06

Merci beaucoup, c'est bon j'ai réussi a le faire :D

Re: Pagination avec ajax

par moogli » 22 juil. 2013, 21:49

Modération :
Afin d'obtenir plus de réponses, le sujet a été déplacé dans un forum plus approprié.


salut,

Il faut que tu passe en paramètre de la requête ajax les infos de pagination pour que tu puisse faire la requête de sélection sur le script cible qui va te retourner un tableau (par exemple json) avec les données de la page.

ensuite tu reconstruit l'affichage html avec les données.

tu peux utiliser un framwork JS (jquery, Ext Js, etc etc) pour t'aider à la chose.


@+

Pagination avec ajax

par ps6c0tic » 22 juil. 2013, 11:52

salut la compagnie, voilà j'ai réussi à réaliser une pagination qui marche super bien, le seul bémol est que je dois recharger ma page à chaque fois que je veux passer à une nouvelle partie de ma pagination.
Je sais qu'il y a moyen de recharger que la partie de la pagination grâce à AJAX mais je ne sais pas comment m'y prendre :? si vous pouviez me donner un coup de pouce, ou deux :D ça serait vraiment génial

Voilà un exemple où j'utilise ma pagination:
<?php
	session_start();
	include('../charte/database_connexion.php');
	include('../charte/corps_admin.php');
	echo '<title>Gestion de Rôle</title>';
	echo '<body>';
	if(isset($_POST['id_role'])){
		$req=$bdd->query("SELECT * FROM roles WHERE id_role='" . $_POST['id_role'] . "'");
		$role=$req->fetch();
		$req->closeCursor();
		if($role['id_role']!=$_POST['id_role'] or $role['libelle']!=$_POST['libelle'] )
			$bdd->exec("UPDATE roles SET libelle='" . $_POST['libelle'] . "' WHERE id_role='" . $_POST['id_role'] ."'") or die(pint_r($bdd->errorInfor()));
			header('location: role.php');
	}
	if(!isset($_GET['id_role'])){
	include ('../collaborateur/function.php');
	include("../js/accordion_ajout.js");
	$page = (int) (!isset($_GET["page"]) ? 1 : $_GET["page"]);
	$limit = 5;
	$startpoint = ($page * $limit) - $limit;
	$statement="SELECT * FROM roles";
	?>


<fieldset>
	<legend class="titre_demande">Liste des Rôles</legend>
<table  width="1024" align="center" class="tableau">
	<tr>
			<td rowspan="1">ID Role</td>
			<td rowspan="1">Libellé</td>
			<td colspan="2">Administration</td>

		</tr>


	<?php
	$req=$bdd->query($statement . " LIMIT {$startpoint} , {$limit}");
	while($donnée=$req->fetch())
	{
		echo '<tr>';
		echo '<td><center><strong>' . $donnée['id_role'];
		echo '</strong></center></td><td><center>' . $donnée['libelle'];
		echo '<td  ><center><a href="role.php?id_role=' . $donnée['id_role'] . '&operation=1"> <img src="../image/reload-system-software-update-icone-7320-96.png" />Modifier</a></td>';
		echo '</center></td><td onclick="message()"><center><a href="role.php?id_role=' . $donnée['id_role'] . '&operation=0"> <img src="../image/6.png" />Supprimer<center></a></td>';}
	echo '</tr>';

	?>

<tr><td colspan ="4">
<center><ul class="navigation">
  <li class="toggleSubMenu"><span>Ajouter Nouveau Rôle:</span>
    <ul class="subMenu">
      <li>
      <form method="post" action="ajout_role_statut_conge_exceptionnel.php">
      <label for="role">Libellé Rôle: </label>
      <input type="text" id="role" name="role" required class="labdesign" /><br/>
      <input type="submit" class="ajouter" />
      </form></li>
    </ul>
    </li>
</ul></center>
</td>
</tr>
	</table></fieldset>
	<?php
	echo  pagination($statement,$limit,$page);
 }
	else{
		if($_GET['operation']==1){
			include('modifier_role.php');
		}
		if($_GET['operation']==0){
			$bdd->exec("DELETE FROM roles WHERE id_role='" . $_GET['id_role'] . "'") or die('erreur');
			unset($_GET);
			header('location: role.php');
		}
	}?>
	</body>
	</html>