Connexion formulaire a la base de donné
Résolu
dannezri
Messages postés
52
Date d'inscription
Statut
Membre
Dernière intervention
-
dannezri Messages postés 52 Date d'inscription Statut Membre Dernière intervention -
dannezri Messages postés 52 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je viens de créé mon formulaire (mais comme je suis debutant en php il doit y avoir plein de fautes), j'ai 2 problème, le premier étant que quand je complete pas tous le champs il n'y a pas le message d'erreur qui s'affiche comme quoi tous le champs doivent être remplis, et le deuxième problème est que aucune donné n'arrive sur ma base de donné.
Voici le code de ma page de formulaire
et voici la page nommé "bddform" qui est censé me connecter a ma base de donné
Merci
Je viens de créé mon formulaire (mais comme je suis debutant en php il doit y avoir plein de fautes), j'ai 2 problème, le premier étant que quand je complete pas tous le champs il n'y a pas le message d'erreur qui s'affiche comme quoi tous le champs doivent être remplis, et le deuxième problème est que aucune donné n'arrive sur ma base de donné.
Voici le code de ma page de formulaire
<?php
//--------------------------------------//
// Pour afficher les erreurs PHP
//--------------------------------------//
error_reporting(E_ALL);
//--------------------------------------//
//On importe la connexion à la BDD
//--------------------------------------//
require_once 'bddform.php';
//--------------------------------------//
//Récupération "propre" des variables
// AVANT de les utiliser :
//--------------------------------------//
$prénom = !empty($_POST['prénom']) ? htmlspecialchars($_POST['prénom']) : NULL ;
$nom = !empty($_POST['nom']) ? htmlspecialchars($_POST['nom']) : NULL ;
$avis = !empty($_POST['avis']) ? htmlspecialchars($_POST['avis']) : NULL ;
//--------------------------------------//
// Traitement du submit :
//--------------------------------------//
if(isset($_POST['form'])) {
if( $prénom && $nom && $avis ){
$pseudolenght = strlen($pseudo);
$sql = "INSERT INTO users (prénom,nom,avis)
VALUES (:prénom,:nom,:avis)";
$params = array(":prénom"=>$prénom,":nom"=>$nom,":avis"=>$avis);
$prepare = $bdd->prepare($sql);
$prepare->execute($params);
header('Location: connexion.php');
}else
{
$erreur = "Tous les champs doivent être complétés ";
}
}
//--------------------------------------//
?>
<html>
<head>
<title>Formulaire</title>
<link rel="stylesheet" href="styleform.css" />
</head>
<body><center>
<div>
<h2>Votre avis nous intéresse</h2>
<br /><br />
<form method="POST" action="">
<table>
<tr>
<td>
<label for="Prénom">Prénom :</label>
</td>
<td>
<input type="text"
placeholder="Votre prénom" id="prénom" name="prénom" value="<?php if(isset($prénom)) {echo $prénom;} ?> "/>
</td>
</tr>
</table>
<table>
<tr>
<td>
<label for="Nom">Nom :</label>
</td>
<td>
<input type="text"
placeholder="Votre nom" id="nom" name="nom" value="<?php if(isset($nom)) {echo $nom;} ?> "/>
</td>
</tr>
</table>
<table>
<tr>
<td>
<label for="avis">Votre avis :</label>
</td>
<td>
<input type="text"
<textarea placeholder="Votre avis" id="avis" name="avis" value="<?php if(isset($nom)) {echo $avis;} ?> "/>
</td>
</textarea>
</tr>
</table>
<tr>
<td></td>
<td>
<br />
<input type="submit" name="Envoyer" value="Envoyer" />
</td>
</tr>
</table>
</form>
</form>
<?php
if(isset($erreur))
{
echo $erreur;
}
?>
</div>
</body></center>
</html>
et voici la page nommé "bddform" qui est censé me connecter a ma base de donné
<?php
//---------------------------------------------------------------------//
//Connexion à la BDD
// (A mettre dans un fichier à part nommé par exemple : cnxBDD.php)
//---------------------------------------------------------------------//
$host = "localhost";
$dbname = "formulaire";
$user = "root";
$pwd = "root";
try{
$options = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING);
$bdd = new PDO("mysql:host=".$host.";dbname=".$dbname.";charset=utf8", $user, $pwd ,$options);
}catch (Exception $e){
echo '<br>Erreur : ' . $e->getMessage();
exit();
}
Merci
A voir également:
- Connexion formulaire a la base de donné
- Whatsapp formulaire opposition - Guide
- Gmail connexion - Guide
- Formulaire de réclamation facebook - Guide
- Base de registre - Guide
- Site inaccessible n'autorise pas la connexion - Guide
Merci d'avance
Tu sais ce que veux dire << Retirer les accents >> ?
==> Cela veut dire par exemple ... changer un "é" en "e"
Tu sais ce qu'est une variable ?
==> En php .. elles commencent par le signe $.... comme par exemple : $prenom ( sans accent donc ! )
Ensuite.. pour les ATTRIBUTS name et id des éléments html ...
Tu prends par exemple cette ligne de ton code :
... Tu peux voir .. qu'elle contient des choses nommées : ID .. et NAME ..... ce sont les ATTRIBUTS (du même nom..)
Et donc ... tu y retire les caractères accentués .....
C'est à dire .. tu écris prénom ... sans le "é" .. donc ...... "prenom"
NB: Comme tu auras également changé le nom de tes variables PHP .. il faudra donc aussi les changer partout dans ton code (là où tu les utilises....) .. cela vaudra donc aussi sur le ligne de code de ton input ..puisque tu as utilisé $prénom dans l'attribut VALUE ..... il faudra donc mettre $prenom sans accents !