problème de quotes (php)

problème de quotes (php) - Programmation

Marsh Posté le 16-04-2001 à 14:38:04    

Bonjour,  
 
j'ai des problèmes avec les doubles quotes en HTML et PHP. J'ai tois pages:
-un formulaire de saisie
-une page qui recapitule les infos saisies
-et une dernière page où j'insère dans ma base mysql mes differents champs
 
le problème est qu'entre la 2ème et la 3ème page je perd tout ce qui suis des doubles quotes c'est à dire si je tape: salut "toto"
dans le récapitulatif j'ai bien ça mais dans la 3ème page j'ai plus que salut
J'ai essayé AddSlashes mais ça ne marche pas.
 
au secours !!!!

Reply

Marsh Posté le 16-04-2001 à 14:38:04   

Reply

Marsh Posté le 16-04-2001 à 15:18:26    

addslashes ca devrait marcher
t sur ke t'as pas fé 1 erreur ?

Reply

Marsh Posté le 16-04-2001 à 15:48:56    

Non il n'y a pas d'erreur. Qulqu'un me conseille d'utiliser la fonction ereg_replace mais je n'y arrive pas car je ne sais pas comment est codée mon " dans la chaine.
 
merci

Reply

Marsh Posté le 16-04-2001 à 17:29:00    

comment fais-tu passer les infos de la 2ème à la 3ème page ?

Reply

Marsh Posté le 16-04-2001 à 17:40:13    

salut!
je passe mon paramètre en hidden

Reply

Marsh Posté le 16-04-2001 à 23:02:31    

Utilise des cookies pour passer tes variables. Ce sera plus simple...

Reply

Marsh Posté le 16-04-2001 à 23:15:55    

c ce que je craignais ! le pb vient du code html de ta balise hidden : si tu fais <input type="hidden" value="[la valeur]"...> et que dans [la valeur] il y a des "", la valeur sera tronquée au premier ", le navigateur pensant que c'est la fin de la valeur !

Reply

Marsh Posté le 17-04-2001 à 08:42:54    

Ok merci. Mais alors comment je peux parer le problème ? Avec des cookie Fly ?

Reply

Marsh Posté le 17-04-2001 à 09:54:40    

Traite tes variables, entre autre tes caractères " -> utilise la fonction php suivante : $string = htmlspecialchars($string);
 
pour ta première page :  
si dans un champ qu'on appellera var, tu entres "toto";
 
Ta seconde page recevera : $var -> \"toto\";
 
Traite ta variable $var comme cela :  
 
$var = stripslashes(htmlspecialchars($var));
ton \"toto\" va devenir "toto"
 
Cela t'évite de tapper des \ lorsque tu va la renvoyer à ta 3eme page.
 
Sinon, pour les cookies, c'est bien pratique pour stocker des variables et pouvoir les utiliser sur n'importe quelle page. Dans ton cas, cela t'évite d'utiliser des champs cachés. Par contre, il faut quand même traiter tes variables.

Reply

Marsh Posté le 18-04-2001 à 20:00:49    

Merci, j'essaye dès que j'ai un moment et je te tiens au courant

Reply

Marsh Posté le 18-04-2001 à 20:00:49   

Reply

Marsh Posté le 20-04-2001 à 16:44:59    

Gagné !! C'était bien ça. Je te remercie, je te raconte pas comme je me suis pris la tête avec ce problème.
 
merci encore

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed