sql >> Databasteknik >  >> RDS >> Mysql

PHP-Form validering och infogning med MySql

Först och främst skulle jag föreslå att du undviker ingångarna.

också värt att notera att du kan använda förberedda uttalanden och objektorienterat sätt för mysqli eftersom de flesta dokumenten på OO är tydligare än det procedurmässiga sättet.

som :

<?php
$u=striptags($_POST['username']);
$p=striptags($_POST['password']);
$e=filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
$ph=(int)$_POST['phone'];

$mysqli = new mysqli($host,$username,$password,$db_name); 
$query = "INSERT INTO register (username,password,email,phone) VALUES (?,?,?,?)";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("sssi", $u, $p, $e, $ph);
$stmt->execute();
$mysqli->close();

?>

det skulle inte heller skada att använda hash på ditt lösenord som:

<?php

$salt = mcrypt_create_iv(16, MCRYPT_DEV_URANDOM);
$passh = crypt($pass, '$6$'.$salt);
?>

Observera att du måste lagra saltet i mysql också så att du kan jämföra det senare

så med dessa är dina lösenord säkrare och om din databas blir stulen kommer lösenorden att förbli hashade.




  1. Funktion eller procedur för en IN-klausul

  2. Hur man hämtar uppladdade filer med php

  3. MYSQL - Infoga om tabellen är tom

  4. MariaDB datum och tid funktioner (fullständig lista)