Mon code

koukou -  
the_animal Messages postés 74 Statut Membre -
bonjour , j au un formulaire ou je dois ecrire mon nom et prenom et apres tt s'enregistre dans ma base de donnée , voila le code que j ai utilisé mais ca marche pas , aidez moi svp

<?php

{
$bdd = new PDO('mysql:host=localhost;dbname=koukou, "root", '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}

$req = $bdd->prepare('INSERT INTO mabase ( 'nom', 'prenom' ) VALUES
( ?, ?)');
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];

$req->execute(array($nom, $prenom);

// Redirection du visiteur vers la page
header('Location: fichenom.php');

?>

1 réponse

  1. the_animal Messages postés 74 Statut Membre 18
     
    Bonjour,

    A première vue, je ne vois que des erreurs de syntaxe:

    - c'est quoi l'accolade au debut? t'as oublié try
    - $bdd = new PDO('mysql:host=localhost;dbname=koukou, "root", ''); manque de quote, doit être $bdd= new PDO("mysql:host=localhost;dbname=koukou", root , '');
    - $req->execute(array($nom, $prenom); manque de parenthèse, doit être: $req->execute(array($nom, $prenom));

    Important: PDO ne te retourne aucune erreur ni exception par défaut, tu dois specifier la mode d'erreur:
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    donc ton code doit être comme:

    try {
    $bdd= new PDO("mysql:host=localhost;dbname=koukou", root , '');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $req = $bdd->prepare("INSERT INTO mabase ( nom, prenom ) VALUES
    ( ?, ?)");
    $nom=$_POST['nom'];
    $prenom=$_POST['prenom'];
    $req->execute(array($nom, $prenom));
    } catch (PDOException $e) {
    echo $e->getMessage();
    }

    prenez toujours note de ce que je fais.
    0