-
Bug avec "a=
Bonjour à tous
Je travaille sur l'api de virtualmin, et je rencontre un soucis.
Je passe des paramètres dans une URL de cette façon :
Code:
shell_exec("wget -O - --quiet --http-user=".$server['user']." --http-passwd=".$server['passwd']." --no-check-certificate 'https://".$server['url'].":10000/virtual-server/remote.cgi?program=".$program.$datas."&json=1'");
Jusque la tout va bien ça fonctionne, sauf si je veux envoyer une valeur comme " "a=1024 " par exemple
J'ai tenté de faire un htmlentities dessus, mais shell_exec n'aime pas beaucoup le format html encodé et du coup ma requete plante ...
le "a se transforme en réalité en "a=1024 donc forcément ...
Merci d'avance de votre aide
-
c'est plutot urlencode() qu'il te faut.
-
merci de ta réponse
j'avais déjà tenté, mais le & se retrouve encodé et ne fonctionne plus dans shell_exec avec la commande wget
Il doit bien y avoir un moyen de passer ce bug quand même ?
-
d'ailleurs ton "a=1024 est placé ou dans ta commande ?
-
voici un exemple de la commande générée et exécutée dans shell_exec
Code:
wget -O - --quiet --http-user=xxxxxx --http-passwd=xxxxxx --no-check-certificate 'https://mondomaine.com:10000/virtual-server/remote.cgi?program=create-user&domain=domain.fr&real=essai&user=test&random-pass="a=102400'
sauf que j'ai "a=102400 au lieu de "a=102400 dans la requête ...
-
Le problème ne vient pas de PHP.
En tout cas avec firefox j'arrive bien à faire passer ce genre de paramètres.
-
je ne comprend pas pourquoi de plus le "a est converti en "a dans le code php dans ce cas ...
ensuite passer "a= directement dans la barre d'adresse ça passe, mais je ne parle pas de faire une requete dans le navigateur firefox, mais bel et bien d'envoyer cette url avec un wget depuis la fonction shell_exec
Voici le bout de code php qui ajoute ce morceau d'url :
Code:
$datas .= '"a='.(int)$quota;
J'ai tenté avec ""a=".(int)... ça ne change rien non plus
l'encodage de mon editeur est UTF8 sans bom, j'ai testé en ansi j'ai le même soucis ...
-
Ce n'est pas php qui fait la conversion à mon avis.
-