Actualiser le tableau sans recharger la page

cs_lamiae2 Messages postés 50 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 22 avril 2009 - 21 avril 2009 à 13:18
cs_lamiae2 Messages postés 50 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 22 avril 2009 - 22 avril 2009 à 11:49
Bonjour,
je voulais savoir si quand on appelle une requête UPDATE tel que :
mysql_query("UPDATE table SET lu=1 WHERE id='$variable'"); 

l'update de la bdd se fait  aux rechargement de la page
Car au rafraichissement de la page ma variable change et du coup mes 2  occurrences passe à 1
donc pour eviter ce problème j'ai utiliser ajax,mais puisque je suis débutante j'ai pas arrivé à résoudre mon problème????
voila le code que j'utilise:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
<script language="JavaScript" type="text/javascript">
var HttpObj = null;
var HttpStr = null;
 
function sendRequest(HttpStr){
if( window.XMLHttpRequest){
  // Objet XmlHttpRequest pour les moteurs GECKO
  HttpObj = new XMLHttpRequest();  
}elseif( window.ActiveXObject){
  // Objet XmlHttpRequest pour Internet Explorer
  HttpObj = new ActiveXObject('Microsoft.XMLHTTP');  
}else{
  // Navigateur non-compatible
  alert('Votre navigateur ne supporte pas les objets XMLHTTPRequest...');  
  return;
}
// On traite l'argument passé à la fonction
// On ouvre la requete vers la page désirée
HttpObj.open('POST', HttpStr, false);
HttpObj.open('POST', HttpStr, false);
// On lui donne le pointeur de fonction de retour
HttpObj.onreadystatechange = returnRequest;
// On envoi la requete
HttpObj.send(null);
}
function returnRequest(){
// Sur le retour de la requete, on teste son étatif( HttpObj.readyState 4 && HttpObj.status 200){
  // On injecte notre retour dans la DIV prevue a cet effet
  document.getElementById('liste').innerHTML = HttpObj.responseText;
}
}
 
function affiche(id){
elt3=document.getElementById("us");
elt4=document.getElementById("utiliser");
var strHtml = document.getElementById(id).value;
sendRequest('Moneygems.php?str='+strHtml)+'&utiliser='+elt3.value+'&us='+elt4.value;
 
alert(strHtml);
 
}
var testsub=0;
function selectionner(valeur,valdeux,valtrois,valquatre){
testsub=1;
var  val= valeur;
document.form2m.us.value=val;
document.form1m.us2.value=val;
 
}
function validerMonFormulaire(){
// Traiter les éléments du formulaire
if(testsub==1)
{

returntrue;
}
else
{
alert("Veuillez séléctionner SVP")
returnfalse;

}
}
 
 
 
 
</script>
</head>

<fieldset>
 

"center">
  <legend  align="center"class="Style2">NOUVEAU MONEY-GEMS</legend>

 
 
 
if( isset($_POST['utiliser']))
{
     mysql_connect("localhost", "root", "");
        mysql_select_db("article");
$mgere=$_POST['us'];

mysql_query("UPDATE articlee SET livr='OUI' where idg='".$mgere."'");
}
?>
  name="recherche" type="submit"class="Style1" id="recherche" value="Rechercher" align="right" onclick="pop()" on />

<form id="form2m"name="form2m"  method="post" action="" onsubmit="return validerMonFormulaire();">
  name="us" type="hidden" id="us" />
?>

2 réponses

Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
22 avril 2009 à 02:36
L'update en base de donnée se fait au moment où la requête est exécuter, c'est-à-dire quand tu appelles la fonction mysql_query.

Pour le reste, je n'ai pas bien compris ton problème.
0
cs_lamiae2 Messages postés 50 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 22 avril 2009
22 avril 2009 à 11:49
merci pour la réponse;

oui effectivement L'update en base de donnée se fait au moment où la requête est exécuter,mais le problèlme c qu'il m'ajoute une ligne de plus dans mon tableau et pas dans la base!!!

je modifie une celule de mon tableau en selectionnat la ligne et ecliquant sur un bouton utiliser!la requete s'execute et fontionne bien!mais il m'ajoute une ligne de plus???? à cause de l'actualisation!!!! j'ai essayer d'actualiser que le tableau avec ajax mais ça fonctionne pas???<!-- / message -->
0
Rejoignez-nous