Données formulaire à base de donnée

Fermé
theananas - 30 nov. 2020 à 10:55
 theananas - 30 nov. 2020 à 20:10
Bonjour, mes données que j'applique à mon formulaire ne se retrouve pas dans ma base de données, pouvez vous m'aider à comprendre comment le faire ?

<?php

if (isset($_POST['nom']))
{
$bd = new SQLite3('mcu.db');
$statement = $bd->prepare('INSERT INTO Profil (nom,prenom,pseudo,email,password,confirm,jour,mois,annee) VALUES(:nom,:prenom,:pseudo,:email,:password,:confirm,:jour,:mois,:annee);');
$statement->bindValue(':nom',htmlspecialchars($_POST['nom']));
$statement->bindValue(':prenom',htmlspecialchars($_POST['prenom']));
$statement->bindValue(':pseudo',htmlspecialchars($_POST['pseudo']));
$statement->bindValue(':email',htmlspecialchars($_POST['email']));
$statement->bindValue(':password',htmlspecialchars($_POST['password']));
$statement->bindValue(':confirm',htmlspecialchars($_POST['confirm']));
$statement->bindValue(':jour',htmlspecialchars($_POST['jour']));
$statement->bindValue(':mois',htmlspecialchars($_POST['mois']));
$statement->bindValue(':annee',htmlspecialchars($_POST['annee']));
$bd->execute(array(("nom" = $nom,"prenom" = $prenom,"pseudo" = $pseudo,"email" = $email,"password" = $password,"confirm" = $confirm,"jour" = $jour,"mois" = $mois,"annee" = $annee));

header('location : afficher.php');
}


$AfficherFormulaire=1;

$nom = !empty($_POST['nom']) ? trim($_POST['nom']) : NULL;
$prenom = !empty($_POST['prenom']) ? trim($_POST['prenom']) : NULL;
$pseudo = !empty($_POST['pseudo']) ? trim($_POST['pseudo']) : NULL;
$password = !empty($_POST['password']) ? trim($_POST['password']) : NULL;
$email = !empty($_POST['email']) ? trim($_POST['email']) : NULL;
$confirm = !empty($_POST['confirm']) ? trim($_POST['confirm']) : NULL;

function dbQuery($sql){
global $mysqli;
if (!$res = mysqli_query($mysqli, $sql)) {
printf("Message d'erreur : %s\n", mysqli_error($mysqli));
exit;
}
return $res;
}

if($pseudo && $password){

if(!$password){
echo "Veuillez écrire votre mot de passe.";
} elseif(!$nom){
echo "Veuillez écrire votre nom.";
} elseif(!$prenom){
echo "Veuillez écrire votre prénom.";
} elseif(!$confirm){
echo "Veuillez confirmer votre mot de passe.";
} elseif(!$pseudo){
echo "Veuillez écrire votre pseudo.";
} elseif(strlen($pseudo)>15) {
echo "Le pseudo est trop long, il dépasse 15 caractères.";
} elseif($password != $confirm) {
echo 'Les deux mots de passe doivent être identiques.';
} elseif(!$email){
echo "Veuillez écrire votre adresse mail.";
}

}


if($AfficherFormulaire==1){
?>

<?php require("haut.php"); ?>
<link rel="stylesheet" href='style.css'>

<div id='main_1'>
<ul>
<a href="accueil.php">Accueil</a>
<br><br><br>
<span class="caption7">
<a href="inscription.php">- Inscription -</a>
<br><br><br>
<a href="compte.php">- Mon Profil -</a>
</span>
<br><br><br>
<a href="histoire.php">Histoire du studio</a>
<br><br><br>
<a href="perso.php">Les Super-Héros</a>
<br><br><br>
<a href="film.php">Les Films</a>
<br><br><br>
<a href="quizz.php">SUPER QUIZZZ</a>
</ul>
</div>

<br><br><br>
<span class="caption4">INSCRIPTION</span>
<br><br><br><br><br><br>

<form method="post" action="inscription.php" name="inscription" onSubmit="verif(inscription)">
<table border="1" align="center">
<tr>
<td>
Nom : <input type="text" name="nom" >
<br />
</td>
</tr>
<tr>
<td>
Prénom : <input type="text" name="prenom">
<br />
</td>
</tr>
<tr>
<td>
Pseudo : <input type="text" name="pseudo">
<br />
</td>
</tr>
<tr>
<td>
Mot de passe : <input type="password" name="password">
<br />
</td>
</tr>
<tr>
<td>
Confirmation : <input type="password" name="confirm">
<br />
</td>
</tr>
<tr>
<td>
Email : <input type="text" name="email">
<br />
</td>
</tr>
<tr>
<td>
Date de naissance :

<select name="jour">
<?php
$jour=31;
for ($j=1; $j<$jour; $j++)
{
echo '<option value="'.$j.'">'.$j.'</option>';
}
?>
</select>
/
<select name="mois">
<?php
$mois=12;
for ($m=1; $m<$mois; $m++)
{
echo '<option value="'.$m.'">'.$m.'</option>';
}
?>

</select>
/
<select name="annee">
<?php
$annee=2020;
for ($a=1960; $a<$annee; $a++)
{
echo '<option value="'.$a.'">'.$a.'</option>';
}
?>
</select>
</td>
</tr>
<tr>
<td class="comp"> Sexe :
<input type="radio" name="sexe" value="homme" >
Homme
<input type="radio" name="sexe" value="femme" checked>
Femme
<input type="radio" name="sexe" value="non-binaire" checked>
Non-binaire
</td>
</tr>
<tr align="center">
<td colspan="2"><input name="submit" type=submit value="S'inscrire">
<input type="hidden" value="2" name="OK" />
</td>
</tr>
</table>
</form>
<?php
}
?>

1 réponse

jordane45 Messages postés 38457 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 28 mars 2025 4 740
30 nov. 2020 à 11:21
Bonjour,

Déjà, lorsque tu postes du code sur le forum, merci d'y préciser le langage afin que l'on ait la coloration syntaxique et les numéros de lignes.
Explications ( à lire ENTIEREMENT ! ) disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Ensuite, ben, tu mélanges du PDO et du Mysqli .... pourquoi ???

Tu sembles aussi mélanger du Sqlite et du mysql .... alors... laquelle utilises-tu réellement ??

Et puis.. tu mélanges du bindParam et du passage de variables dans le Execute ...

A croire que tu as mélangé tous les codes que tu as trouvé au hasard sur le net... tu les as bien malaxé ... et tu les as collé comme ça au pif en pensant que ça marcherait ....

1
Très bien merci beaucoup de votre réponse je vais revoir tout ça plus en détaille !
0