sql >> Database >  >> RDS >> Mysql

Vermijd SQL-injectie in registratieformulier php

De beste manier om injecties te vermijden, is door Prepared Statements te gebruiken. .
Voor voorbereide verklaringen gebruik ik liever PDO om al mijn DB-dingen af ​​te handelen. hier is wat PDO-voorbeeldcode die ik heb geschreven om wat basisinloggegevens op te halen:

$sql=new PDO("mysql:host=127.0.0.1;dbname=name","user","password");
        $user=$_POST[user];

        $query="select Salt,Passwd from User
                where Name=:user";
        $stmt=$sql->prepare($query);
        $stmt->bindParam(':user',$user);
        $stmt->execute();
        $dr=$stmt->fetch();        
        $sql=null; 
        $password=$_POST[pass];
        $salt=$dr['Salt'];

... enz

Lees dit pagina voor meer informatie over PDO. Als je wilt weten wat elke regel code hier doet, lees dan dit antwoord dat ik op een ander bericht heb gegeven.



  1. Converteer 'datetime' naar 'datetimeoffset' in SQL Server (T-SQL-voorbeelden)

  2. Dagen aan een datum toevoegen in MySQL

  3. Controleer of mysql-database bestaat, voer actie uit op basis van resultaat

  4. Inleiding tot SQL