Erreur que je ne comprend pas aide svp ????

Résolu
Havca_ -  
 Havca_ -

j'ai une erreur avec mon code php pour faire un formulaire d'inscription qui stocke les données dans une base de données MySQL.

voidi mon code php:

<!DOCTYPE html>
<html>
    <head>
        <title>coucou</title>
        <link rel="stylesheet" href="styleform.css">
        <link rel="shortcut icon" href="ressources/image/home_favicon.png" type="image/x-icon">
    </head>
    <body>
        <p>coucou</p>




        <form method="post">
            <input autocomplete="off" id="mail" placeholder="Email" name="mail" type="email" required>
            <input autocomplete="off" id="pass" placeholder="Password" name="pass" type="password" required>
            <input autocomplete="off" id="cpass" placeholder="Comfirmation Password" name="cpass" type="password" required>
            <button type="submit" name="submit" id="submit">Login</button>
        </form>

        <?php

            if(isset($_POST['submit'])){

                extract($_POST);

                if(!empty($pass) && !empty($cpass) && !empty($mail)){
                    //echo $logpass;
                    if($pass == $cpass){
                        $option = ['cost' => 12,];
                        $hashpass = password_hash($pass, PASSWORD_BCRYPT, $option);

                        include 'database.php';
                        global $db;

                        $q = $db->prepare('INSERT INTO utilisateur(email, mdp) VALUES(:email, :mdp)');
                        $q->execute([
                            'email' => $mail,
                            'mdp' => $hashpass
                        ]);
                    }else{
                        echo "les deux mots de passe ne sont pas identiques";
                    }

                }else{
                    echo "les champs ne sont pas tous remplis";
                }
            }





        ?>

    </body>
</html>

et voici l'erreur que j'ai sur la page:

ça n'a pas l'air d'etre un problème de connections a la base de données car ça me dis "connection > OK !, voici le code qui fait dire ça:

<?php

    define('HOST', 'localhost');
    define('DB_NAME', 'siteweb');
    define('USER', 'root');
    define('PASS', '');

    try{
        $db = new PDO("mysql:host" . HOST . ";dbname=siteweb", USER, PASS);
        $db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
        echo "Connection > OK !";
    } catch(PDOException $e){
        echo $e;
    }

je vous remerci d'avance de votre aide, et je l'espère pouvoir règler mon problème car a votre aide ????

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 

Bonjour

Ton souci concerne un problème de PHP et non de base de données je déplace donc le sujet dans le bon forum.

En ce qui concerne ton problème, tu as oublié un signe égal après le mot host

$db = new PDO("mysql:host=" . HOST . ";dbname=

1
Havca_
 

je te remercie de l'aide, ça fonctionne maintenant

0
Havca_
 

la ligne 55 c'est la ligne 39 du premier code, g oublier depréciser 

0