[AJAX] Ajax et rafraichissement
Bonjour,
J'ai une liste déroulante dans laquelle différentes disciplines sont inscrites.
Pour chaque discipline, J'ai différents grades dans un tableau. Ceci se passe en AJAX.
Mon problème se situe ici. J'ai 7 grades par pages maximum. Lorsque j'en ai plus de 7, je passe à la page suivante et j'aimerais enfaite savoir si lorsque je change de pages je peux tout simplement faire un rafraichissement de mon AJAX pour avoir les 7 grades suivants.
Voici mon code:
gestionGrade.php:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
<?php include "header.php"; ?>
<div id="menuHaut">
<div id='MH1'>
<a href='formGrade.php'>Ajout d'un grade</a>
</div>
</div>
<?php
echo "<h1>Liste des grades</h1>";
include 'menuGauche.php';
?>
<form action="gestionGradeModif.php" method="POST" name="gestGrade">
<input type="hidden" name="disOuGrade" value="grade">
<p style="position:relative;left:400px;"> Choix de la discipline :
<select id="id_discipline_2" name="id_discipline_2" onChange="changeGrade();">
<option value="">
</option>
<?php
$reqDis1="SELECT * FROM disciplines";
$dis1=mysql_query($reqDis1) or die( mysql_error() );
while($datadis = mysql_fetch_array($dis1))
{
echo"<option name='$datadis[discipline]' value='$datadis[id_discipline]'>$datadis[discipline]</option>";
// if($_POST['idDiscipline']==$datadis["id_discipline"])
// echo"<option selected name='$datadis[discipline]' value='$datadis[id_discipline]'>$datadis[discipline]</option>";
// else
// echo"<option name='$datadis[discipline]' value='$datadis[id_discipline]'>$datadis[discipline]</option>";
}
?>
</select>
</p>
<div id='tablegrade'>
<table name='tablegrade' id='tablegrade' border='1'>
<!-- Si la page est différente de 1 et que l'idDiscipline non-nul alors on affiche la page 2 -->
</table><br /><br />
</div>
<input type="submit" value="Supprimer" style="position:absolute;left:500px; top:420px;">
</input>
</form>
<?php include ("footer.php"); ?>
<script language="Javascript">
function getXhr(){
var xhr = null;
if(window.XMLHttpRequest){ // Firefox et autres
xhr = new XMLHttpRequest();
}
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr;
}
function changeGrade()
{
var xhr = getXhr();
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200)
{
var leselect = xhr.responseText;
document.getElementById('tablegrade').innerHTML = leselect;
}
}
xhr.open("POST","gestionGradeModif.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
sel = document.getElementById('id_discipline_2');
iddisciplineModif = sel.options[sel.selectedIndex].value;
xhr.send("idDiscipline="+iddisciplineModif);
}
function rafraichirTableau()
{
}
</script> |
gestionGradeModif.php:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
<?php
echo '<table name="tablegrade" border="1">
<tr>
<th>Grade</th>
<th>Supprimer</th>
</tr>
';
if(isset($_POST["idDiscipline"])){
$db="samourai_gestion";
$connect = mysql_connect("localhost","admin","LSfnTlm08") or die ('Erreur : '.mysql_error());;
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$gradeParPages = 7;
$select = "SELECT count(*) FROM grades WHERE idDiscipline='".$_POST['idDiscipline']."'";
$result = mysql_query($select) or die (mysql_error() );
$row = mysql_fetch_array($result);
$total = $row[0];
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($total/$gradeParPages);
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle = intval($_GET['page']);
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
}
}
else // Sinon
{
$pageActuelle=1; /* La page actuelle est la n°1*/
}
$premiereEntree =($pageActuelle-1)* $gradeParPages;
$requete = "SELECT * FROM grades WHERE idDiscipline ='".$_POST['idDiscipline']."' ORDER BY nom_grade ASC LIMIT ".$premiereEntree.",".$gradeParPages."";
$resultat = mysql_query($requete);
while ($data = mysql_fetch_assoc($resultat))
{
echo '<tr>
<td>'.$data['nom_grade'].'</td>
<td><input type="checkbox" name="del_grade[]" value="'.$data["id_grade"].'" id="Del_discipline'.$data["id_grade"].'" ></td>
</tr> ';
}
}
echo '</table>';
echo'<div id="divPaginationDiscipline">';
for($i=1;$i<=$nombreDePages;$i++)
{
if($i!=$pageActuelle)
{
//echo "<a href='gestionGrade.php?page=".$i."&idDiscipline=".$_POST['idDiscipline']."'>".$i."</a> ";
echo "<span onClick='rafraichirTableau();'>".$i."</span> ";
}
else
{
echo $i." ";
}
}
echo"</div>";
?> |
Merci d'avance pour votre aide. Je vais continuer à cherché des solutions de mon coté.