IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Antislash dans php


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    Bonjour à tous,

    J'ai un petit problème sur un formulaire, quand les personnes renseignent une information avec une apostrophe du genre "l'évaluation".
    Il y a plusieurs antislash qui viennent s'incrémenter dans la base de données: "l\\\\\\\\\\\\\\\\'évaluation".
    Si quelqu'un pouvait m'aider?

    J'ai mis le code de l'insertion des données dans la base, je pense que c'est ici qu'il faut agir.....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'INSERT INTO personne VALUES("", "'.mysql_escape_string($_POST['nom']).'", "'.mysql_escape_string($_POST['prenom']).'", "'.date("Y-m-d").'", "'.mysql_escape_string($_POST['form']).'" )';
    Merci et bonne journée

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Cela ne vient pas de la requête.
    Si tu es sur un vieille version de PHP, il faut désactiver les magic_quotes.

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Probleme d'antislash dans php
    j'ai trouvé ce code mais ça doit pas marcher ou alors je l'ai pas bien placé.....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     <?php
    if(get_magic_quotes_gpc()){
    	function stripslashes_deep($value)
    	{
    		return (is_array($value)) ? array_map('stripslashes_deep', $value) : stripslashes($value);
    	}
     
    	$_GET    = array_map('stripslashes_deep', $_GET);
    	$_POST   = array_map('stripslashes_deep', $_POST);
    	$_COOKIE = array_map('stripslashes_deep', $_COOKIE);
    }
    ?>

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    OU éventuellement chercher si il n'y a pas un addslashes qui traine quelque part...

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Probleme d'antislash dans php
    Et après vérification pas de addslashes.....

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Pour être bien clair, les solutions proposées ne retirent pas les \ déjà existant dans ta base de données.

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Probleme d'antislash dans php
    oui je sais mais c'est pour les futures en fait....

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il vaudrait déjà répondre à la question de base : est-ce que les magic_quotes sont actifs sur ton serveur ?

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    Je ne sais pas, le site est hébergé sur le serveur d'un fournisseur....mais ça doit être surement activé et qu'elle est le but d'activer le magic quote?

  10. #10
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    Gros problème là ! PHP 5.0 n'est plus supporté depuis longtemps, 5.4 est la version minimum à utiliser actuellement (plus pour longtemps) et les magic quotes sont dépréciées depuis 5.3. La doc : http://php.net/manual/en/security.magicquotes.php

    Le fonctionnement ? Auto-échappement des caractères. La raison de la suppression ? Trop dangereux, il vaut mieux laisser le développeur gérer et ne pas faire des choses "magiques" non contrôlées.

    Pour moi la première chose à faire est de faire une maj du serveur ou déménager chez un hébergeur digne de ce nom (OVH propose du 5.6 entre autre).

  11. #11
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Qu'est-​ce que les guillemets magiques?

    Pour savoir ce qu'il y a sur ton serveur, un petit phpinfo.

  12. #12
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    Merci et oui les magic quotes gpc sont sur On....

  13. #13
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    aaaarrggl.... Je plussoie Théocrite : si tu peux, fais une montée de version de PHP en PHP 5.4+, ou au moins désactive ces foutues magic quotes...
    Désactiver les guillemets magiques

  14. #14
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    En même temps j'ai oublié de préciser que dans les deux cas il faut bien checker tout le site, car les magic quotes peuvent impacter tout le système, pas seulement la partie que tu changes.

  15. #15
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    Merci de prendre du temps pour mon problème....
    Actuellement ma version de php est 5.2 mais comment dois je faire pour mettre une version supérieur? c'est pas le fournisseur qui doit faire ça?

  16. #16
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    Tout dépends de ce que tu entends par "fournisseur". Tu peux être sur du shared hosting, Virtual Private Server, Dedicated Server, avec ou sans infogérance, du serveur interne à une entreprise (en quel cas, y-a-t-il un sysadmin ou non...)... Enfin voilà quoi. Là nous on va pas pouvoir beaucoup plus t'aider sans infos complémentaires.

    Dans un premier temps, si tu t'en sors avec Git, tu peux essayer de cloner le projet sur un hébergement gratuit sur openshift par exemple (la box proposé sera une 5.4 de mémoire). Une fois installé, tu peux tester pour vérifier ce qui va/ne vas pas, pourquoi pas en dressant un tableau de test (contexte|action effectuée|résultat attendu|résultat obtenu|OK/KO). Faire le tableau permettra par la suite de retester l'application plus systématiquement que juste random clicking. Ensuite (beaucoup plus tard), ce tableau pourra servir à développer une suite de test d'acceptance automatisé (utilisant Codeception ou Behat par exemple).

    Si tu arrives à faire une migration en 5.4 sur de l'hosting gratuit (ou sur Wamp sur ton ordi si tu te sens d'installer les trucs), tu sais que la migration est faisable et qu'il faut alors que le fournisseur ou toi mettent à jour (ou changer d'hébergeur).

  17. #17
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    je sais que c'est un serveur mutualisé...

  18. #18
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Chez certains hébergeurs on peut changer dynamiquement la version de PHP ; c'est un sujet à voir avec ton hébergeur, pas avec nous

  19. #19
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Antislash dans php
    Oui mais avant de poser des questions à mon fournisseur, je voulais comprendre un peu le fonctionnement.

  20. #20
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il n'y a pas de fonctionnement à connaitre.
    Il faut seulement lui demander regarder dans son portail d'assistance, ce qu'il propose pour changer de version de PHP.

Discussions similaires

  1. HTML dans PHP, PHP dans HTML...
    Par jeremy_chauvel dans le forum Langage
    Réponses: 3
    Dernier message: 24/04/2006, 20h28
  2. [ODBC] Peut-on inserer une BD d'un autre format dans php
    Par nzo77 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 23/12/2005, 14h28
  3. Concaténation PHP dans PHP
    Par tchoukapi dans le forum Langage
    Réponses: 2
    Dernier message: 27/11/2005, 19h30
  4. Réponses: 10
    Dernier message: 03/09/2004, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo