bonjour,

je prépare une page permettant de tester des select sur les tables de ma base de données.
même si cette page ne sera pas accessible à n'importe qui, je souhaiterais avoir un code sécurisé empêchant les mauvaises manip sur les tables.
on doit simplement pouvoir consulter les tables sans rien modifier.

voici un extrait du code que j'ai préparé :

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
      <form action="select.php" method="post">
        <input type="text" id="sql" name="sql" value="<?= (isset($_POST['sql'])) ? htmlentities($_POST['sql'], ENT_QUOTES, "utf-8") : ""?>" size="70"><br>
        <input type="submit" value="Envoyer"><br>
      </form><br><?php
      if(isset($_POST['sql'])){
        $select = trim($_POST['sql']);
        if(substr($select, -1) == ';')
          $select = substr($select, 0, -1);
        if(strtolower(substr($select, 0, 6)) != "select" || strpos($select, ';') !== false){
          echo "      Erreur !";
        }
        else{
          echo "      OK !";
        }
      }
      ?>
bien sur à la place du message "OK" il y aura la requête dans ma base.
merci de vos commentaires.

ben