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 :

Sécurisation du code pour éviter les injections SQL [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    profession médicale
    Inscrit en
    Décembre 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : profession médicale
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2005
    Messages : 25
    Points : 21
    Points
    21
    Par défaut Sécurisation du code pour éviter les injections SQL
    Bonjour,
    je vous soumets un code que je pense avoir à peu près sécurisé, pouvez-vous me dire si il est correct

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <?php
     $mysqli = new mysqli("127.0.0.1", "root", "", "elevagedubanney");
    if(isset($_POST['Titre'], $_POST['Texte']))
    {
    echo $_POST['Titre'],"<br/>", $_POST['Texte'],"<br/>";
    }
    else
    {
    	echo"les valeurs ne sont pas transmises<br/>";
    }
    $sql= "INSERT INTO news (titre, texte) VALUES (?,?)";
    // préparation de la requ^te
    $resultat = mysqli_prepare ($mysqli, $sql);
    //liaison des paramètres
    $ok = mysqli_stmt_bind_param ($resultat, 'ss',$val1,$val2);
    $val1=mysqli_real_escape_string($mysqli, $_POST['Titre']);
    $val2=mysqli_real_escape_string($mysqli,$_POST['Texte']);
    //execution de la requête
    $ok = mysqli_stmt_execute($resultat);
    if($ok==FALSE)
    {
    	echo"echec de l'execution de la requête<br/>";
    }
    else
    {
    	echo"l'inscription est faite<br/>";
    }
    mysqli_stmt_close($resultat);
    if(mysqli_close($mysqli))
    {
    	echo"déconnexion réussie";
    }
    ?>
    merci pour votre aide,
    cordialement,

  2. #2
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 275
    Points
    3 275
    Par défaut
    Tu n'as même pas besoin d'utiliser mysqli_real_escape_string vu que l'utilisation d'une requête préparée suffit. Pour répondre à ta question oui il est sécurisé, en tout cas contre les injections SQL.

  3. #3
    Membre à l'essai
    Homme Profil pro
    profession médicale
    Inscrit en
    Décembre 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : profession médicale
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2005
    Messages : 25
    Points : 21
    Points
    21
    Par défaut merci
    merci pour ton aide
    je vais mettre le post comme résolu

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

Discussions similaires

  1. [MySQL] besoin d'aide pour comprendre les injections sql
    Par cassy dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 28/01/2007, 15h21
  2. Réponses: 2
    Dernier message: 28/06/2006, 09h53
  3. Lutter contre les injections SQL
    Par EvilAngel dans le forum ASP
    Réponses: 4
    Dernier message: 15/06/2006, 18h27
  4. Réponses: 2
    Dernier message: 13/11/2005, 19h03

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