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   -
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:

7 réponses

jee pee Messages postés 41520 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
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


0
luckyman2020 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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...
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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

.
0
Utilisateur anonyme
 
Bonjour,

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.
0
luckyman2020 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Montres nous ton code "modifié" qu'on puisse voir ca que tu as éventuellement oublié.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
As-tu activé les erreurs PDO ?

$evoq = new PDO('mysql:host=localhost;dbname=echangeroom;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
0
luckyman2020 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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




<?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é!";
}

?>

0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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é
0
luckyman2020 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
MERCI A TOUS J'AI TROUVÉ L'ERREUR
0