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 :

htmlspecialchars alors pour addslaches/stripslaches ?


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 32
    Points
    32
    Par défaut htmlspecialchars alors pour addslaches/stripslaches ?
    Salut,

    si j'ai bien compris pour un enregistrement d'une donnée en mysql on doit generalement faire un addslaches afin d'ignorer les ('), mais si on mettait avant htmlspecialchars qui encode automatiquement ses caractheres, on aurait plus besoin des fonctions addslaches et stripslaches non ? puisque les ' seront transfomés en &#039 ?

    voila, c'était juste une question que je posais depuis ce matin :p


    (on aura plus besoin de magic quotes gpc d'ailleurs, alalal je commence à tout melanger)

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 091
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 091
    Points : 8 194
    Points
    8 194
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par 007007 Voir le message
    si j'ai bien compris pour un enregistrement d'une donnée en mysql on doit generalement faire un addslaches afin d'ignorer les (')
    Préfère mysql_real_escape_string( ) à addslashes( ).
    De plus fait attention aux magic-quotes : http://www.php.net/manual/fr/security.magicquotes.php

    mais si on mettait avant htmlspecialchars qui encode automatiquement ses caractheres, on aurait plus besoin des fonctions addslaches et stripslaches non ? puisque les ' seront transfomés en ' ?
    Oui mais non, tu stockerais alors des entités HTML et tant que possible du HTML n'a rien à faire dans une BdD. Les données de la BdD doivent être le plus neutre possible.
    Pourquoi ? Imagine que tu veuilles faire une sortie texte, tu te retrouverais avec des " à décoder.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 32
    Points
    32
    Par défaut
    php 6 a vu le jour ? je savais pas ça

    euh sinon pour le magic quotes gpc c'est activé dans mon hebergeur mutu, je ne peux rien faire

    sinon qu'est ce que tu suggerres comme traitement pour une variable avant de l'inserer dans une bdd ?

    merci

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 091
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 091
    Points : 8 194
    Points
    8 194
    Billets dans le blog
    17
    Par défaut
    Ce que je fais :
    Si magic-quotes actives : stripslashes( ) sur tous les éléments de $_GET, $_POST, etc. et addslashes( ) au besoin
    Avant insertion MySQL : mysql_real_escape_string( )
    C'est tout
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  5. #5
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Ce que je fais :
    Si magic-quotes actives : stripslashes( ) sur tous les éléments de $_GET, $_POST, etc. et addslashes( ) au besoin
    Avant insertion MySQL : mysql_real_escape_string( )
    C'est tout
    Oui et avec sa disparition dans PHP6, de toute façon on ne rique rien d'écrire un truc comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
     
     if(!get_magic_quotes_gpc() )
         {
         $Lnom =addslashes($Lnom);
         $Ltxt =addslashes($Ltxt);
         }
          else
           {
            $Lnom =str_replace("'","''",$Lnom);
            $Ltxt =str_replace("'","''",$Ltxt);
           }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 01/03/2011, 19h41
  2. [osCommerce] Produit affiche à 7.7kg pour les frais de port alors qu'il fait 7kg
    Par freija dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 23/02/2007, 11h37
  3. Réponses: 3
    Dernier message: 05/11/2006, 13h19
  4. Code pour formule si .. alors
    Par lokal64 dans le forum Access
    Réponses: 3
    Dernier message: 30/05/2006, 17h02
  5. Pas de easy struts pour eclipse 3.1 ..alors?
    Par Ahmed0012 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 09/03/2006, 11h54

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