Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/10/2007, 16h41   #1
Nouveau Membre du Club
 
Inscription : juillet 2002
Messages : 93
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : juillet 2002
Messages : 93
Points : 28
Points : 28
Par défaut Caractéres spéciaux et formulaire

Bonjour,

J'ai un formulaire avec un champ de text libre représentant un nom de répertoire.
L'utilisateur saisit la chaine "c:\" (sans les guillemets), lorsque je récupére (via un $_POST['repertoire']) ma chaine de caratere devient "c:\\" (sans les guillemets) NB: il y a deux caractere "\" )

Comment faire pour recuperer ma chaine de caractere sans cette transformation ?

NB : mon objectif est bien sur de sauvegarder ce champ en base de données ORACLE.

Une idée ?
Merci

Je debute en php : indulgence SVP.
Nexussmb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 17h00   #2
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
Tu dois avoir l'option magic_quotes_gpc activée dans le php.ini.
Soit tu as accès au php.ini et tu remplaces le on par un off, soit lorsque tu récupères ton champ tu appliques la fonction stripslashes.
__________________
Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 13h39   #3
Nouveau Membre du Club
 
Inscription : juillet 2002
Messages : 93
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : juillet 2002
Messages : 93
Points : 28
Points : 28
Merci Ratapapapour ta réponse, je comprends mieux maintenant d'ou proviennent les deux "\".
Cependant mon probléme n'est pas résolu, car il est impossible d'inserer en base de données oracle la chaine de caractére "c:\" (sans les doubles guillemets).

la requete envoyée via php est la suivante:

Code :
insert into unvolume (id_site,id_mac,chemin,type_disk,volume_tot,volume_used,derniere_maj,type_donnees,pct_affect_dsv,statut_chemin,mode_maj) values (1 , 109 , 'c:\' , 'toto' , 5 , 4 , to_date('07-11-2007','DD/MM/YYYY') , 'bdd' , 5 , 'ACTIF' , 'A')
Sous TOAD ceci fonctionne, mais pas via PHP : une erreur ORA-00917 : missing comma se produit !!

En clair je veux pouvoir via mon programme php inserer dans une table ORACLE la chaine de caractére "c:\" (sans les doubles guillemets).

Quelqu'un aurait une idée ? merci d'avance

NB : je ne peux pas modifier le fichier php.ini (d'autres application tourne sur le serveur).
Nexussmb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 16h14   #4
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
De mémoire oracle utilise la même méthode pour échapper des caractères, à savoir grâce au caractère \.

Si tu ne veux pas que ton \ soit interprété le caractère d'échappement, il faut que tu conserves l'écriture \\ qui permet de considérer au SGBD que c'est bien le caractère \ que tu cherches à insérer.

A confirmer cependant.
__________________
Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/11/2007, 09h31   #5
Nouveau Membre du Club
 
Inscription : juillet 2002
Messages : 93
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : juillet 2002
Messages : 93
Points : 28
Points : 28
Merci pour vos réponses.

Le probléme posé est un faux probléme (erreur d'analyse), une fonction modifier la chaine de caractére avant l'insert et ajoutait les '\'.

Désolé pour le déranagement
Nexussmb est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h00.


 
 
 
 
Partenaires

Hébergement Web