Récupérer une variable supplémentaire dans un script en ajax
2 messages
• Page 1 sur 1
- Vespa
- WRInaute occasionnel

- Messages: 346
- Inscription: 17 Nov 2003
Récupérer une variable supplémentaire dans un script en ajax
J'ai un soucis que je vais vous exposer avec un script ajax ...
Trois fichiers :
Le premier : getuser.php
Le second : selectuser.js
Le 3ème le formulaire :
J'aimerai :
1) Récupérer la variable $userid provenant du formulaire dans mon fichier getuser.php (mais à cause du javascript je n'y arrive pas ...)
Comme vous pouvez le constater, le javascript est appelé depuis le onchange du select dans le formulaire mais je ne sais pas si je peux lui faire prendre également le $userid en même temps ou si faut appeler le javascript autrement ?
Je ne sais pas comment récupérer la variable $userid dans le javascript et la récupérer dans le fichier getuser.php ...
Merci pour votre aide :blush:
Trois fichiers :
Le premier : getuser.php
- Code: Tout sélectionner
<?php
$q=$_GET["q"];
$userid=$_GET["userid"];
$con = mysql_connect('localhost', 'monuser', 'monmotdepasse');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("basedetest", $con);
$sql="SELECT memberid, username, avatar FROM jos_comprofiler_members WHERE type = '".$q."' and accepted='1' and memberid=$user_id";
$result = mysql_query($sql);
echo "<table border='1'>
<tr>
<th>Pseudo</th>
<th>Avatar</th>
</tr>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td><a href=\"user=" . $row['memberid'] . "\">" . $row['username'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
Le second : selectuser.js
- Code: Tout sélectionner
var xmlHttp;
function showUser(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
var url="getuser.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
Le 3ème le formulaire :
- Code: Tout sélectionner
<?php
echo" <script language=\"javascript\" type=\"text/javascript\" src=\"selectuser.js\"></script>
<form>
Selectionner la catégorie :
<select name=\"users\" onchange=\"showUser(this.value)\">
<option value=\"aucun\">Votre choix</option>
<option value=\"Amie(s)\">Amie(s)</option>
<option value=\"Collègues\">Collègues</option>
<option value=\"Relation(s)\">Relation(s)</option>
</select>
<input type=\"hidden\" name=\"userid\" value=\"68\" /> 68
</form>
<p>
<div id=\"txtHint\"><b>Les membres de la categ s'afficheront ici.</b></div>
</p>";
?>
J'aimerai :
1) Récupérer la variable $userid provenant du formulaire dans mon fichier getuser.php (mais à cause du javascript je n'y arrive pas ...)
Comme vous pouvez le constater, le javascript est appelé depuis le onchange du select dans le formulaire mais je ne sais pas si je peux lui faire prendre également le $userid en même temps ou si faut appeler le javascript autrement ?
Je ne sais pas comment récupérer la variable $userid dans le javascript et la récupérer dans le fichier getuser.php ...
Merci pour votre aide :blush:
-

UsagiYojimbo - WRInaute accro

- Messages: 8578
- Inscription: 23 Nov 2005
Re: Récupérer une variable supplémentaire dans un script en ajax
Bein il te suffit de passer, en paramètre de la fonction appelée dans ton onchange, la valeur contenu dans le champ userId.
Et de modifier le prototype de ta fonction JS et les traitements en conséquences.
Un conseil par contre : quitte à faire de l'Ajax, je te conseille de passer par un framework JS, moyen beaucoup plus souple de faire des accès aux éléments de ta page, de faire des requêtes HTTP, etc. Par exemple prototype
- Code: Tout sélectionner
onchange="showUser(this.value,document.getElementById('userId').value)"
Et de modifier le prototype de ta fonction JS et les traitements en conséquences.
Un conseil par contre : quitte à faire de l'Ajax, je te conseille de passer par un framework JS, moyen beaucoup plus souple de faire des accès aux éléments de ta page, de faire des requêtes HTTP, etc. Par exemple prototype
2 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Problème de variable pour Ajax
- Récupérer variable GET en Javascript
- Récupérer la variable javascript
- Rafraichir variable php avec ajax
- Rafraichir variable php avec ajax si nécéssaire
- Recuperer une variable de la bdd
- comment récupérer le numéro de la variable
- Script PHP pour récupérer pour récupérer l'HTML d'une page
- Recuperer variable javascript dans PHP
- AJAX=Listes déroulantes créées/rechargées, récupérer valeurs
Consultez la description détaillée des produits ou services de Google suivants : Google Web Toolkit
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
