PHP /MYSQL
Résolu
deep_sea
Messages postés
201
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
j'ai un problème avec cette requete , aucun message ne saffiche malgré il recupére tous les champs des POST
PHP:
HTML
j'ai un problème avec cette requete , aucun message ne saffiche malgré il recupére tous les champs des POST
PHP:
<?php
include 'includes\db.php';
$message='';
print_r($_POST);
$date = date('Y-m-d h:i:s');
$commentaire = mysql_real_escape_string($_POST['Commentaire']);
$email=$_POST['Email'];
$sujet=$_POST['Sujet'];
$nom=$_POST['nom'];
if(isset($_POST['sent']))
{
$sql = "INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( $email, $sujet , $commentaire, $date , $nom )";
if ($conn->query($sql) === TRUE)
{
$message= '<div class="alert alert-info"><strong>Merci!</strong> votre message a bien été envoyé.</div>';
}
else
{
$message= '<div class="alert alert-danger"> <strong>Erreur!</strong> votre message n a pas été envoyé. veuillez réessayer plus tard.</div>';
}
}
else
{
$message= '<div class="alert alert-danger"><strong>Erreur!</strong></div>';
}
$conn->close();
?>
HTML
<form role="form" action="" method="post">
<?php $message; ?>
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Nom</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="nom" placeholder="Entrez ton nom" id="name">
</div>
</div>
<div class="form-group">
<label for="email" class="col-sm-2 control-label">Email</label>
<div class="col-sm-8">
<input type="email" class="form-control" name="Email" placeholder=" Entrez ton adresse Email " id="email">
</div>
</div>
<div class="form-group">
<label for="subject" class="col-sm-2 control-label">Sujet</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="Sujet" placeholder="Entrez ton sujet" id="subject">
</div>
</div>
<div class="form-group">
<label for="comments" class="col-sm-2 control-label">Commentaire</label>
<div class="col-sm-8">
<textarea class="form-control" rows="10" name="Commentaire" style="resize:none;"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"></label>
<div class="col-sm-8">
<input type="submit" name="sent" value="Validé" id="vld" \>
</div></div> </form>
A voir également:
- PHP /MYSQL
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
5 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bjr,
peut-être remplacer
par
peut-être remplacer
<?php $message; ?>
par
<?php echo $message; ?>
Bonjour
Tu dois mettre des quote autour des variables
$sql = "INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( $email, $sujet , $commentaire, $date , $nom )";
Tu dois mettre des quote autour des variables
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
suggestion, pour avoir l'heure en format 24h:
$date = date('Y-m-d H:i:s');
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
le dernier message ("Erreur!") est envoyé dans le cas où $_POST['sent'] est absent.
je te suggère d'ailleurs de clarifier le texte de ce message, pour éviter toute confusion.
je suis donc surpris qu'il soit envoyé juste après que
je te suggère d'ailleurs de clarifier le texte de ce message, pour éviter toute confusion.
je suis donc surpris qu'il soit envoyé juste après que
print_r($_POST);affiche "Array ( (...) [sent] => Validé )"
Array ( [nom] => naziha [Email] => h_n@hotmail.fr [Sujet] => rec1 [Commentaire] => dfgfdh [sent] => Validé ) INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( h_n@hotmail.fr, rec1 , dfgfdh, 2017-06-18 , naziha )
méme affichage en plus en plus ce message
Erreur! votre message n a pas été envoyé. veuillez réessayer plus tard.
méme affichage en plus en plus ce message
Erreur! votre message n a pas été envoyé. veuillez réessayer plus tard.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bon...
IL y a pleins de soucis dans ton code ...
Déjà pour la requête .. SI il faut les QUOTES autour des variables TEXTE.
DOnc :
Doit être écrit :
Entuite... tu sembles mélanger du mysql ... avec du mysqli !
Par exemple ...ça c'est du mysqli (ou du pdo) stylé objet
et à côté de ça ... tu utilises aussi du :
Donc Soit tu utilises mysql (considéré comme obsolète ! ) soit tu utiilises PDO ou MYSQLI !
A toi de nous le dire ... et à toi de choisir !!!!
(En regardant tes précédentes questions... il semble que tu utilises mysqli ... donc commence par enlever (ou corriger) toutes les lignes de codes utilisant l'ancienne extension mysql)
Pour finir; comme déjà recomandé dans une de tes précédente questions... place ceci au début de tes codes php :
IL y a pleins de soucis dans ton code ...
Déjà pour la requête .. SI il faut les QUOTES autour des variables TEXTE.
DOnc :
INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( h_n@hotmail.fr, rec1 , dfgfdh, 2017-06-18 , naziha )
Doit être écrit :
INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( 'h_n@hotmail.fr', 'rec1' , 'dfgfdh', '2017-06-18' , 'naziha' )
Entuite... tu sembles mélanger du mysql ... avec du mysqli !
Par exemple ...ça c'est du mysqli (ou du pdo) stylé objet
$conn->query($sql)
et à côté de ça ... tu utilises aussi du :
mysql_real_escape_string($_POST['Commentaire']);.
Donc Soit tu utilises mysql (considéré comme obsolète ! ) soit tu utiilises PDO ou MYSQLI !
A toi de nous le dire ... et à toi de choisir !!!!
(En regardant tes précédentes questions... il semble que tu utilises mysqli ... donc commence par enlever (ou corriger) toutes les lignes de codes utilisant l'ancienne extension mysql)
Pour finir; comme déjà recomandé dans une de tes précédente questions... place ceci au début de tes codes php :
//Affichage des erreurs PHP error_reporting(E_ALL); ini_set('display-errors','on');
ensuite partager: ce qui est affiché par le print_r et les deux echo.
echo $sql;
INSERT INTO `reclamation_user`(`Email`, `Sujet`, `Commentaire`, `date`, `nom`) VALUES ( h_n@hotmail.fr, rec1 , gdfgdf fgf, 2017-06-18 01:30:23 , naziha )