comment faire marcher mon Insert Into
Posté : 04 juin 2021, 14:19
Bonjour,
j'avais un formulaire d'inscription qui fonctionnais, en voulant nettoyer un peu de code et faire propre et plus compréhensible il semblerais que j'ai casser mon Insert d'une manière ou d'une autre. J'ai fait des vérifications comme le var dump pour voire si les différentes variables sont bonnes, vérif de la BDD, et j'ai aussi tester une requête Insert tout simple avec une seul variable (last_name) mais cela ne marche pas non plus. si vous avez des idées je suis preneur, même si c'est me diriger je serais content.
Test Insert Simple, qui ne fonctionne pas non plus
j'avais un formulaire d'inscription qui fonctionnais, en voulant nettoyer un peu de code et faire propre et plus compréhensible il semblerais que j'ai casser mon Insert d'une manière ou d'une autre. J'ai fait des vérifications comme le var dump pour voire si les différentes variables sont bonnes, vérif de la BDD, et j'ai aussi tester une requête Insert tout simple avec une seul variable (last_name) mais cela ne marche pas non plus. si vous avez des idées je suis preneur, même si c'est me diriger je serais content.
Code : Tout sélectionner
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$lastName = $_POST['lastname'];
$firstName = $_POST['firstname'];
$userName = $_POST['username'];
$password = $_POST['password'];
$secretQuestion = $_POST['secret_question'];
$answer = $_POST['answer'];
if (strlen($lastName) < 2 || strlen($lastName) > 10) {
echo "Nom non valide";
}
if (strlen($firstName) < 2 || strlen($firstName) > 10) {
echo "Prénom non valide";
}
if (strlen($userName) < 2 || strlen($userName) > 10) {
echo "Username non valide";
}
if (strlen($password) < 3 || strlen($password) > 10 ) {
echo "Mot de passe non valide";
}
switch($secretQuestion) {
case 1:
$secretQuestion = "Quelle est votre couleur préférée?";
if (!isset($answer) || strlen($answer) < 3) {
echo "Réponse non valide";
}
break;
case 2:
$secretQuestion = "Quel est le nom de votre mère?";
if (!isset($answer) || strlen($answer) < 3) {
echo "Réponse non valide";
}
break;
case 3:
$secretQuestion = "Où se trouve votre ville natale?";
if (!isset($answer) || strlen($answer) < 3) {
echo "Réponse non valide";
}
}
$sql = $connection-> prepare("SELECT * FROM accounts WHERE username = ?");
$sql-> execute([$_POST['username']]);
if ($sql->rowCount() > 0) {
echo "Ce nom d'utilisateur existe.";
}
$insertinfo = $connection->prepare("INSERT INTO accounts (last_name, first_name, username, password, secret_question, answer) VALUES ?, ?, ?, ?, ?, ?");
$insertinfo-> execute([$lastName, $firstName, $userName, sha1($password), $secretQuestion, $answer] );
//test variables
var_dump($lastName, $firstName, $userName, sha1($password), $secretQuestion, $answer);
}
?>
Code : Tout sélectionner
$insertinfo = $connection->prepare("INSERT INTO accounts (last_name) VALUES ?");
$insertinfo-> execute([$lastName] );