Je n'arrive pas a inserer les donnees de mon formulaire
Résolu
chibozor10
Messages postés
3
Statut
Membre
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour,
je n' arrive pas a inserer les donnees de mon formulaire dans ma base de donnees
ET VOICI MON CODE PHP
COORDIALEMENT
je n' arrive pas a inserer les donnees de mon formulaire dans ma base de donnees
<form class="contact-box" action="connection.php" method="POST" enctype="multipart/form-data">
<div class="form-group">
<label>Nom*</label>
<input type="text" class="form-control" name="nom">
</div>
<div class="form-group">
<label>Adresse Email*</label>
<input type="text" class="form-control" name="adresse">
</div>
<div class="form-group">
<label>Message*</label>
<input type="text" class="form-control" name="message">
</div>
<div class="row">
<div class="col-md-12">
<a href="connection.php" class="btnbtn-default">Envoyer</a>
</div>
</div>
</form>
ET VOICI MON CODE PHP
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=monsite', 'root', '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
<?php
if(empty($_POST['nom']) ||empty($_POST['adresse']) ){
?><SCRIPT LANGUAGE="JAVASCRIPT">alert("Vous devez remplir les champs svp!"); </SCRIPT><?php
echo '<meta http-equiv="refresh" content="0; URL=index.php">';//redirection
}else
{ $requete=$bdd->query("INSERT INTO visiteur(nom,adresse,message) VALUES('$_POST[’nom’]','$_POST[’adresse’]','$_POST[’message’]') ");
$reponse=mysql_query($requete) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base
mysql_close();
?>
<SCRIPT LANGUAGE="JAVASCRIPT">alert(" Demande prise en compte!");</SCRIPT><?php
echo '<meta http-equiv="refresh" content="0; URL=index.php">';
}
?>
COORDIALEMENT
A voir également:
- Je n'arrive pas a inserer les donnees de mon formulaire
- Whatsapp formulaire opposition - Guide
- Fuite données maif - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Insérer video powerpoint - Guide
- Insérer signature word - Guide
2 réponses
Bonjour,
Je pense que ton bouton est mauvais essaye avec sa :
Je pense que ton bouton est mauvais essaye avec sa :
<div class="row">
<div class="col-md-12">
<input type="submit" class="btnbtn-default" name="envoyer" value="Envoyer">
</div>
</div>
Bonjour,
Commence par récupérer PROPREMENT les variables AVANT de les utiliser.
Puis penses à utiliser les requetes préparées pour éviter les injections sql
et également à utiliser des bloc TRY/Catch pour intercepter les éventuelles erreurs dans le code.
NB: Pour activer l'affichage des erreurs PDO, il faut ajouter l'option lors de la connexion.
par exemple :
Cordialement,
Jordane
Commence par récupérer PROPREMENT les variables AVANT de les utiliser.
Puis penses à utiliser les requetes préparées pour éviter les injections sql
et également à utiliser des bloc TRY/Catch pour intercepter les éventuelles erreurs dans le code.
//récupération "propre" des variables
$nom = isset($_POST[’nom’]) ? $_POST[’nom’] : '';
$addr = isset($_POST[’adresse’]) ? $_POST[’adresse’] : '';
$msg = isset($_POST[’message’]) ? $_POST[’message’] : '';
//Utilisation des variables :
$sql = ("INSERT INTO visiteur(nom,adresse,message) VALUES(:nom,:addr,:msg) ";
$datas = array(':nom'=>$nom, ':addr'=>$addr ,':msg'=>$msg);
try{
$prepare =$bdd->prepare($sql);
$prepare->execute($datas);
}catch(Exception $e){
echo "Erreur ! " .$e->getMessage();
}
NB: Pour activer l'affichage des erreurs PDO, il faut ajouter l'option lors de la connexion.
par exemple :
<?php
$host = 'localhost';
$user = 'root';
$pwd = '';
$dbname = 'monsite';
$charset = ";charset=UTF8"; //si tu veux avoir de l'utf8
try{
$pdo = new PDO("mysql:host=".$host.";dbname=".$dbname.$charset.",".$user.",".$pwd);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
} catch(PDOException $e) {
die('Erreur : ' . $e->getMessage());
}
Cordialement,
Jordane
Sans oublier que....
Attention.... tu as utilisé DEUX technos différentes .... PDO d'un côté... et du "vieux" mysql d'un autre....
.....
ON NE MELANGE PAS !!!
Attention.... tu as utilisé DEUX technos différentes .... PDO d'un côté... et du "vieux" mysql d'un autre....
{ $requete=$bdd->query("INSERT INTO visiteur(nom,adresse,message) VALUES('$_POST[’nom’]','$_POST[’adresse’]','$_POST[’message’]') ");
$reponse=mysql_query($requete) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base
mysql_close();
.....
ON NE MELANGE PAS !!!