Messieurs Bonjour,

Desole pour le titre mais honnetement, l'inspiration n'etait pas au rendez-vous.

Voici mon souci.
Je boss un site web qui est bien avance, mais la je reprend un point que j'avais laisse de cote.

Le site contient une page php affichant une fiche article en fonction de l'ID de celui-ci.
Les donnees sont stockees dans une base Mysql

Au debut, je stockais cet ID a l'ouverture de la page dans une varriable $_SESSION['ACTUAL_ARTICLE_ID'], dans le but d'executer des requettes via un script du genre :
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
 
if (window.XMLHttpRequest) {
				// code for IE7+, Firefox, Chrome, Opera, Safari
				xmlhttp=new XMLHttpRequest();
			  } else { // code for IE6, IE5
				xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
			  }
			  xmlhttp.onreadystatechange=function() {
				if (xmlhttp.readyState==4 && xmlhttp.status==200) {
				  document.getElementById("article_content").innerHTML=xmlhttp.responseText;
				}
			  }
 
			xmlhttp.open("POST","article.php",true);
			xmlhttp.send();
qui appel Article.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
<?php
...
$req_select = "SELECT * FROM ".$dbname.".Articles_table where id= ".$_SESSION['ACTUAL_ARTICLE_ID']."";
...
?>
Le souci avec cela est que si j'ouvre dans un nouvel onglet un nouvel article, la variable $_SESSION['ACTUAL_ARTICLE_ID'] est reecrite, donc si je fais un refresh du premier onglet, le navigateur affiche alors l'article du nouvel onglet.

J'espere que je me suis bien exprime.

Donc pour palier temporairement et avancer sur mon dev, j'ai mis de coter la variable de $_SESSION et utilise un hidden input :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<input id="article_id" type="hidden" name="article" value="xxxx" />
que je passe en paramettre via jquery
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
 
			if (window.XMLHttpRequest) {
				// code for IE7+, Firefox, Chrome, Opera, Safari
				xmlhttp=new XMLHttpRequest();
			  } else { // code for IE6, IE5
				xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
			  }
			  xmlhttp.onreadystatechange=function() {
				if (xmlhttp.readyState==4 && xmlhttp.status==200) {
				  document.getElementById("article_content").innerHTML=xmlhttp.responseText;
				}
			  }
 
			xmlhttp.open("POST","article.php?id="+$("#article_id").val(),true);
			xmlhttp.send();
Article.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
<?php
if(isset($_GET)){
$id=mysql_real_escape_string($_GET["id"]);
...
$req_select = "SELECT * FROM ".$dbname.".Articles_table where id= ".$id."";
...
?>
Bon cela marche nickel, mais l'utilisateur peux changer l'id manuellement depuis le code source de la page et pour quelques raison qui sont pas utiles de develloper, sa me derange.

Aurriez vous une solution, une idee pour pouvoir acceder et utiliser cet ID dans article.php autrement ?

Merci