Bonjour à tous
Débutant en PHP-Mysql, je souhaiterai savoir si cette page de validation des membres par un admin est "injectable" si oui pourquoi et comment corriger mes erreurs. Cette page est bien entendu protégée par un Htaccess réservée à l'admin.
En fait, je souhaiterai connaitre certaines bases pour "coder" de manière sécurisée à chaque fois que je crée quelque-chose afin d'avoir certains réflexes.
Merci à ceux qui prendrons le temps de m'expliquer tout cela.
la bdd :
ma page :
Débutant en PHP-Mysql, je souhaiterai savoir si cette page de validation des membres par un admin est "injectable" si oui pourquoi et comment corriger mes erreurs. Cette page est bien entendu protégée par un Htaccess réservée à l'admin.
En fait, je souhaiterai connaitre certaines bases pour "coder" de manière sécurisée à chaque fois que je crée quelque-chose afin d'avoir certains réflexes.
Merci à ceux qui prendrons le temps de m'expliquer tout cela.
la bdd :
<?php
$pdo = new PDO('mysql:dbname=test;host=localhost;charset=UTF8', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
ma page :
<?php
require 'bdd.php';
$req = $pdo->query('SELECT * FROM validation');
while ($validation = $req->fetch())
{
echo 'Nom : ';
echo $validation->nom;
echo ' Prénom: ';
echo $validation->prenom;
echo ' E-mail : ';
echo $validation->email;
echo '<a href="validation.php?action=accepter&id='.$validation->id.'">Accepter</a>';
echo '<a href="validation.php?action=refuser&id='.$validation->id.'">Refuser</a>';
echo '<br/>';
}
if(isset($_GET['action']) AND isset($_GET['id']))
{
$action = $_GET['action'];
if($action == "accepter")
{
$id = $_GET['id'];
$req2 = $pdo->query("SELECT * FROM validation WHERE id='$id'");
$connexion = $req2->fetch();
$nom = $connexion->nom;
$prenom = $connexion->prenom;
$email = $connexion->email;
$pass = $connexion->pass;
$pdo->query("INSERT INTO utilisateurs VALUES('$id', '$nom', '$prenom', '$email', '$pass')");
$pdo->query("DELETE FROM validation WHERE id='$id'");
}
elseif($action == "refuser")
{
$id = $_GET['id'];
$pdo->query("DELETE FROM validation WHERE id='$id'");
}
}
?>