Page 1 sur 2
recuperer dans une variable php le contenu d une variable ja
Posté : 02 juin 2005, 09:16
par donny
salut,
J ai un bouton qui me permet d ouvrir une fenetre à l aide d une fonction javascript et cette fonction prends en paramettre un identifiant contenu dans la value de l option donc j ai essayer de recuperer l identifiant dans une variable php mais sa bogue
Code : Tout sélectionner
function blok(objet, id_objet){
objet.className="option"
if(lastTr)lastTr.className="red"
objet.className="blue"
lastTr=objet;
document.getElementById(id_objet).checked = true;
<? $id= ;?>+document.getElementById(id_objet).value;
alert(document.getElementById(id_objet).value);
j ai ce message d erreur
Parse error: parse error, unexpected ';' in c:\program files\easyphp1-7\www\p\desc.php on line 49
donc j ai essayer de recuperer a l aide d une variable javascript
Code : Tout sélectionner
function blok(objet, id_objet){
objet.className="option"
if(lastTr)lastTr.className="red"
objet.className="blue"
lastTr=objet;
document.getElementById(id_objet).checked = true;
ids=document.getElementById(id_objet).value;
alert(ids);
Code : Tout sélectionner
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ids+','fich.php')">
mais dans l url j ai ecrit +ids+ et nom la valeur de la variable ids ??
Merci
Posté : 02 juin 2005, 09:21
par Cyrano
La première version n,aurait pas généré d'erreur si il n'y avait eu une erreur dans la ligne introduisant la varaible PHP:
<?php echo($id."="); ?>+document.getElementById(id_objet).value;
...
Posté : 02 juin 2005, 09:21
par DJtoph
ton erreur, c'est juste d'avoir oublié un ; a la fin de la ligne 48

Posté : 02 juin 2005, 09:29
par donny
en faite sa ne marche pas, la fonction qui est censer mettre la ligne en surbrillance ne fait plus rien,
je vais me rabattre sur la 2eme solution et je voulais savoir pourquoi il ne recupere pas la variable ids dans l url ?
Pour concatener c est bien + en javascript
Code : Tout sélectionner
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ids+','fich.php')">
le code ma fonction
Code : Tout sélectionner
function ouvrirFenetre(id,url){
var URL = url + "?id=" + id ;
window.open(URL,"PopUp",'width=500,height=350,location=yes,status=no,toolbar=no,scrollbars=no');
}
Re: ...
Posté : 02 juin 2005, 09:29
par Cyrano
ton erreur, c'est juste d'avoir oublié un ; a la fin de la ligne 48
Attention, c'est le contraire: regarde bien le message:
parse error, unexpected ';'
"unexpected" signifie "inattendu", donc "en trop". Il y avait en l'occurence un problème de concaténation inexistante entre une variable et un élément de chaîne de caractère. On pouvait donc déduire facilement en fonction de l'énoncé : construire dynamiquement l'ajout d'un paramètre à une url. Le signe "=" servant dans ce cas doit être traité comme une chaine de caractère et ne fait pas partie du nom de la variable.
Posté : 02 juin 2005, 09:40
par donny
j ai essayer de concatener avec des "." comme en php mais nada
Posté : 02 juin 2005, 09:55
par donny
je pige pas pourquoi il ne veux pas la recuperer dans la fonction ouvrir
j ai fait un alert(ids) sur l evenement onclick du bouton pour tester et il m affiche bien la bonne valeur
????
Posté : 02 juin 2005, 09:56
par Cyrano
j ai essayer de concatener avec des "." comme en php mais nada
L'opérateur de concaténation en JavaScript, c'est le "+", pas le "."
Posté : 02 juin 2005, 10:00
par mere-teresa
en faite sa ne marche pas, la fonction qui est censer mettre la ligne en surbrillance ne fait plus rien,
je vais me rabattre sur la 2eme solution et je voulais savoir pourquoi il ne recupere pas la variable ids dans l url ?
Pour concatener c est bien + en javascript
Code : Tout sélectionner
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ids+','fich.php')">
le code ma fonction
Code : Tout sélectionner
function ouvrirFenetre(id,url){
var URL = url + "?id=" + id ;
window.open(URL,"PopUp",'width=500,height=350,location=yes,status=no,toolbar=no,scrollbars=no');
}
C'est normal : par rapport à ce que tu as écrit...ta fonction js récupère "+ids+" comme id...
Donc
Vérifie dans le code source de ta page HTML quand mm.
Posté : 02 juin 2005, 10:07
par donny
j ai pas trop saisi ce que tu dis parceque si j ecris dnas le onclick cela
Code : Tout sélectionner
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('12','fich.php')">
ce la m ouvre bien une fenetre avec id=12 dans l url
Posté : 02 juin 2005, 10:09
par mere-teresa
Ben relis ce que tu as écrit au dessus...mais effectivement maintenant cela doit fonctionner, non ?**Quel est le souci au juste ?
Posté : 02 juin 2005, 10:19
par donny
bin quand je met 12 sa fonctionne mais quand je met
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ids+','fich.php')">
Alors dans l url j ai cela :
?id=+ids+
et la je capte pas
Posté : 02 juin 2005, 10:24
par Cyrano
Essaye en ajoutant la déclaration de varaible:
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ var ids +','fich.php')">
Le seul truc que turisques, c'est d,avoir un message d'erreur de variable indéfinie.
Posté : 02 juin 2005, 10:26
par mere-teresa
Bah il vient d'où ton +ids+ ?Code : Tout sélectionner
<input type="button" name="maj" value="modif" onclick="ouvrirFenetre('+ var ids +','fich.php')">
Non, car les + sont entre les quote, donc appartiennent à la chaîne de caractère...
Posté : 02 juin 2005, 10:26
par donny
cela ne change rien