Récupération des données du formulaire
Résolu
luckyman2020
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
luckyman2020 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
luckyman2020 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour mon code PHP que voici ne ramène aucune erreur mais n'envoi pas les données de mon formulaire dans la base de données mysql .....quelqu'un pourrait-il m'aider ?
<? php if(isset($_POST['send'])) { $Envoi=htmlentities(trim($_POST['convEnvoi'])); $Recevoir=htmlentities(trim($_POST['convRecu'])); $Montant=htmlentities(trim($_POST['montant'])); $Calculer=htmlentities(trim($_POST['conversion'])); $Adresse=htmlentities(trim($_POST['adresse'])); $Nom=htmlentities(trim($_POST['convNom'])); $Telephone=htmlentities(trim($_POST['telephone'])); $Email=htmlentities(trim($_POST['convEmail'])); if (empty($_POST['convEnvoi'])||empty($_POST['convRecu'])||empty($_POST['montant'])||empty($_POST['conversion'])||empty($_POST['convNom'])||empty($_POST['telephone'])||empty($_POST['convEmail'])) { echo "Veuillez remplir tous les champs!"; } else { $evoq = new PDO('mysql:host=localhost;dbname=echangeroom;charset=utf8', 'root', ''); print_r($evoq); $Envoi=$_POST['convEnvoi']; $Recevoir=$_POST['convRecu']; $Montant=$_POST['montant']; $Calculer=$_POST['conversion']; $Adresse=$_POST['adresse']; $Nom=$_POST['convNom']; $Telephone=$_POST['telephone']; $Email=$_POST['convEmail']; $req=$evoq->prepare('INSERT INTO tabclients(convEnvoi,convRecu,montant,conversion,adresse,convNom,telephone,convEmail) VALUES(:convEnvoi,:convRecu,:montant,:conversion,:adresse,:convNom,:telephone,:convEmail)'); $req->execute(array( 'convEnvoi' => $Envoi, 'convRecu' => $Recevoir, 'montant' => $Montant, 'conversion' => $Calculer, 'adresse' => $Adresse, 'convNom' => $Nom, 'telephone' => $Telephone, 'convEmail' => $Email )); echo "Votre requette a bien été enregistré!"; } } ?>
A voir également:
- Récupération des données du formulaire
- Whatsapp formulaire opposition - Guide
- Fuite données maif - Guide
- Formulaire de réclamation facebook - Guide
- Trier des données excel - Guide
- Formulaire de reclamation instagram - Guide
7 réponses
Bonjour,
" mon code PHP que voici ne ramène aucune erreur" euhhhhhhh où est-ce que tu gères les codes erreurs ?
voir : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
" mon code PHP que voici ne ramène aucune erreur" euhhhhhhh où est-ce que tu gères les codes erreurs ?
voir : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Merci pour ton aide, a vraie dire je suis encore nouveau en php et c'est un peut floue encore avec le renvoi des erreurs. Merci d'être plus précis...
Bonjour,
Il est difficile d'être plus précis que ce qui est marqué dans le lien que Jee-pee t'a donné !
Il suffit de lire et d'appliquer ce qui est marqué !
Je précise également que les fonctions htmlspecialchars, htmlentities ... ne servent qu'à de l'affichage et en aucun cas pour le "traitement" des données avant de faire l'enregistrement en BDD.
Surtout que tu utilises PDO et les requêtes préparées... ce qui est suffisant pour "sécuriser" tes requêtes.
En complément du lien proposée par Jee-pee, je t'invite également à lire et à appliquer les conseils donnés dans ce lien :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Il est difficile d'être plus précis que ce qui est marqué dans le lien que Jee-pee t'a donné !
Il suffit de lire et d'appliquer ce qui est marqué !
Je précise également que les fonctions htmlspecialchars, htmlentities ... ne servent qu'à de l'affichage et en aucun cas pour le "traitement" des données avant de faire l'enregistrement en BDD.
Surtout que tu utilises PDO et les requêtes préparées... ce qui est suffisant pour "sécuriser" tes requêtes.
En complément du lien proposée par Jee-pee, je t'invite également à lire et à appliquer les conseils donnés dans ce lien :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Bonjour,
Le code tel que donné plantera immédiatement, tu as mal ouvert la balise PHP :
Il faut enlever l'espace entre
Ensuite tu pourras activer les messages d'erreur en suivant le lien donné par jee pee.
En complément, je te suggère FORTEMENT d'activer la vérification automatique des erreurs dans ton éditeur de texte, pour voir immédiatement ce genre d'erreurs.
Le code tel que donné plantera immédiatement, tu as mal ouvert la balise PHP :
<? php
Il faut enlever l'espace entre
<?et
php.
Ensuite tu pourras activer les messages d'erreur en suivant le lien donné par jee pee.
En complément, je te suggère FORTEMENT d'activer la vérification automatique des erreurs dans ton éditeur de texte, pour voir immédiatement ce genre d'erreurs.

l' espacement a bien été enlevé les messages d'erreur bien activés, aucune erreur renvoyer cependant aucune récupération dans la bases-de-données introduction base de données] ... a l'aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
As-tu activé les erreurs PDO ?
$evoq = new PDO('mysql:host=localhost;dbname=echangeroom;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
je vois une erreur sur la ligne 46 comme suit
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1364 Field 'id_clients' doesn't have a default value on line 46
voici aussi le tableau sur mysql en photo
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1364 Field 'id_clients' doesn't have a default value on line 46
voici aussi le tableau sur mysql en photo
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
if(isset($_POST['send']))
{
$Envoi=htmlentities(trim($_POST['convEnvoi']));
$Recevoir=htmlentities(trim($_POST['convRecu']));
$Montant=htmlentities(trim($_POST['montant']));
$Calculer=htmlentities(trim($_POST['conversion']));
$Adresse=htmlentities(trim($_POST['adresse']));
$Nom=htmlentities(trim($_POST['convNom']));
$Telephone=htmlentities(trim($_POST['telephone']));
$Email=htmlentities(trim($_POST['convEmail']));
if (empty($_POST['convEnvoi'])||empty($_POST['convRecu'])||empty($_POST['montant'])||empty($_POST['conversion'])||empty($_POST['convNom'])||empty($_POST['telephone'])||empty($_POST['convEmail']))
{
echo "Veuillez remplir tous les champs!";
}
else
{
$evoq = new PDO('mysql:host=localhost;dbname=echangeroom;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
print_r($evoq);
$Envoi=$_POST['convEnvoi'];
$Recevoir=$_POST['convRecu'];
$Montant=$_POST['montant'];
$Calculer=$_POST['conversion'];
$Adresse=$_POST['adresse'];
$Nom=$_POST['convNom'];
$Telephone=$_POST['telephone'];
$Email=$_POST['convEmail'];
$req=$evoq->prepare('INSERT INTO tabclients(convEnvoi,convRecu,montant,conversion,adresse,convNom,telephone,convEmail) VALUES(:convEnvoi,:convRecu,:montant,:conversion,:adresse,:convNom,:telephone,:convEmail)');
$req->execute(array(
'convEnvoi' => $Envoi,
'convRecu' => $Recevoir,
'montant' => $Montant,
'conversion' => $Calculer,
'adresse' => $Adresse,
'convNom' => $Nom,
'telephone' => $Telephone,
'convEmail' => $Email
));
echo "Votre requette a bien été enregistré!";
}
?>
Tonton idée client n'a pas de valeur par défaut définie c'est ce que signifie le message d'erreur...
c'est donc au niveau de la définition de ton champ dans ta base de données qu'il faut agir.
Soit tu lui définis une valeur par défaut ou éventuellement tu définis le chant comme étant auto incrémenté
c'est donc au niveau de la définition de ton champ dans ta base de données qu'il faut agir.
Soit tu lui définis une valeur par défaut ou éventuellement tu définis le chant comme étant auto incrémenté