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é.