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

PHP & Base de données Discussion :

Pourquoi des anti-slashes ? [Fait] [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut Pourquoi des anti-slashes ?
    Salut,
    je voudrais faire un code pour vérifier si le champ 'auteur' est bien '$login'

    Donc j'ai essayé de faire le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
     
                $base = mysql_connect ('', '', ''); 
                mysql_select_db ('recherche', $base) ; 
     
     mysql_query("SELECT * FROM forum_reponses'.$_GET['forum'].' WHERE id='.$_GET['numero_du_message'].' "); 
    $result = mysql_fetch_array ();
     
    if ($result['auteur']=='$login' ) { 
    } 
    else {
    }
    ?>
    En fait si le champ auteur est le même que '$login' alors ok, sinon redirection.
    D'où vient l'erreur?
    Merci
    KevinF

  2. #2
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Bonsoir Kevin,

    Il faudra vraiment que tu te décides à aller voir dans les tutoriels, la doc, les exemples, ...

    Tu verras alors disparaître la plupart de tes erreurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $res = mysql_query("SELECT * FROM forum_reponses'.$_GET['forum'].' WHERE id='.$_GET['numero_du_message'].' ") or die(mysql_error()); 
    $result = mysql_fetch_array ($res);
    De plus, pour alléger tes requêtes, utilise l'* avec parcimonie. dans le cas présent, puisque tu n'utilise que "auteur"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $res = mysql_query("SELECT auteur FROM forum_reponses'.$_GET['forum'].' WHERE id='.$_GET['numero_du_message'].' ") or die(mysql_error()); 
    $result = mysql_fetch_array ($res);
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  3. #3
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
    J'ai cette erreur à la ligne de la requete.
    KevinF

  4. #4
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Pas fait attention aux quotes, essayes comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $res = mysql_query('SELECT auteur FROM forum_reponses'.$_GET['forum'].' WHERE id='.$_GET['numero_du_message'] ) or die(mysql_error()); 
    $result = mysql_fetch_array ($res);
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  5. #5
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Et ce code là est bon pour vérifier si le champ auteur est identique à $login ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if ($result['auteur']=='$login' ) { 
    } 
    else {
    echo 'erreur!';
    }
    Car le champ est identique et il m'affiche
    erreur!
    KevinF

  6. #6
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($result['auteur']=='$login' ) {
    en faisant ça, tu vérifies que le contenu de $result['auteur'] vaut $login, et non pas le contenu de la variable $login...

    je t'invite fortement à aller lire ce tutoriel sur la différence d'utilisation entre les apostrophes et les guillemets (d'ailleur, dans ce cas précis, ni l'un ni l'autre ne sont necessaires autour de $login )
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  7. #7
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Ok, merci de vos aides.
    KevinF

  8. #8
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Une dernière petite chose, j'ai ce code pour afficher le contenu de $message :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo ''.$result['message'].'';
    Et pourquoi lorsqu'il y a des ' il met \ avant ?

    Que faire pour annuler ces choses là?

    Merci
    KevinF

  9. #9
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    C'est bon, suffit de mettre stripslashes() .

    Merci.
    KevinF

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

Discussions similaires

  1. [MySQL] Des anti-slashes dans des modifications et des insertion de données
    Par pasbonte dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 01/02/2009, 10h26
  2. Des anti-slashes dans ma newsletter
    Par dolphi dans le forum Langage
    Réponses: 3
    Dernier message: 09/02/2006, 19h54
  3. [Référencement] Pourquoi des URL longues et explicites ?
    Par bibile dans le forum Référencement
    Réponses: 19
    Dernier message: 09/12/2005, 15h09
  4. Réponses: 10
    Dernier message: 24/10/2005, 16h37
  5. SELECT qui ne retourne rien à cause d'anti-slash
    Par mikyfpc dans le forum Outils
    Réponses: 8
    Dernier message: 07/08/2005, 23h04

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