bonjour,

Je n'arrive pas à faire passer 2 variables php avec javascript pour executer une action sql


Le lien qui envoi les infos à javascript :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<a href="<?php echo $donnees['site_adress']; ?>" onclick="evolution('<?php echo $id; ?>','<?php echo $rang; ?>')"></a>

Le code javascript qui envoi les infos à php :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
function GetXmlHttpObject()
{ 
    var objXMLHttp = null;
    if (window.XMLHttpRequest)
        objXMLHttp=new XMLHttpRequest();
    else if (window.ActiveXObject)
        objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
    return objXMLHttp;
} 
 
function evolution(id,rang)
{
    var xmlHttp = GetXmlHttpObject();
    if (xmlHttp == null){
        alert("Votre navigateur ne supporte pas les requêtes HTTP.");
        return false;
    }	
    var url="evolution.php?id="+id+"&rang="+rang;
    xmlHttp.open("GET", url, true);//envoi en GET asynchrone
    xmlHttp.send(null);
    // fonction à exécuter dès réception de la réponse
    xmlHttp.onreadystatechange = function () {
 
	}
	alert('+1');
	}
Et enfin le code php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
// variable site
$id = $_GET['id'];
$position = $_GET['rang'];
 
// calcul point
if ($position != 0)
{
	$nvposition = $position + 1;
 
	// connexion bd 
	mysql_connect("localhost", "root", "");
	mysql_select_db("mabase");
 
	mysql_query("UPDATE gallery SET position='$nvposition' WHERE fichier='$id'");   
	mysql_close();   
}
 
?>
Le but étant de rajouter 1 au rank à chaque fois qu'il obtient un clic