Menu

Insertion de données dans une base de données [Résolu]

Messages postés
6
Date d'inscription
vendredi 3 octobre 2014
Dernière intervention
17 janvier 2019
- - Dernière réponse : lovesante
Messages postés
6
Date d'inscription
vendredi 3 octobre 2014
Dernière intervention
17 janvier 2019
- 17 janv. 2019 à 23:41
Bonjour,
J’ai un site que j’ai hébergé chez 1&1 et j’ai une base de données là-bas.
Quand j’essaie d’acceder a la base de données:
En lecture avec SELECT FROM ...... sa marche sans soucis
Mais quand j’essaie d’inserer des données dans la base il n’ y’a pas de d’erreur Qui s’affiche et rien est inséré dans la base.
Afficher la suite 

Votre réponse

2 réponses

Messages postés
24625
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 février 2019
1857
0
Merci
Bonjour,

(TOUT lire avant de répondre)

Sans montrer le code exact que tu utilises.... impossible de te répondre.

Quoi qu'il en soit, pense à activer l'affichage des erreurs PHP et, si tu es en PDO, à gérer correctement les erreurs pdo.
Pour ça, avant de nous poster ton code, va lire (et appliquer) le contenu de ces deux liens :

https://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code

https://www.commentcamarche.net/faq/46512-pdo-gerer-les-erreurs

.

PS: pour poster ton code, merci de le faire en utilisant les balises de code
explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
lovesante
Messages postés
6
Date d'inscription
vendredi 3 octobre 2014
Dernière intervention
17 janvier 2019
4 -

<?php

$host_name = 'OOOOOOO';
$database = 'YYYYYYYYYY';
$user_name = 'YYYYYYYYY';
$password = 'XXXXXXXXXX';

$bdd = null;
try {
//connexion a la base
$bdd = new PDO("mysql:host=$host_name; dbname=$database;", $user_name, $password);

// Vérification de la validité des informations
if(!empty ($_POST)){
if (key_exists('pass',$_POST) && key_exists('pseudo',$_POST) && key_exists('email',$_POST)){
// Hachage du mot de passe
$pass_hache = password_hash($_POST['pass'], PASSWORD_DEFAULT);
// Insertion
$req = $bdd->prepare('INSERT INTO users set pseudo=?, pass=?, email=?, date_inscription=?');
$donnee = array(
'pseudo' => $_POST['pseudo'],
'pass' => $_POST['pass'],
'email' => $_POST['email'],
'date_inscription' => date("y-m-d")
);
var_export($donnee);
$val = $req->execute($donnee);
echo "*********".$val."*****";
echo "inscription reussi!";

}
else{
echo "Information saisi incorrect veillez contacter: bahaliou67@gmail.com";
}

}else{
echo "Mauvaise façon d'envoi du formulaire contactez: bahaliou67@gmail.com";
}

} catch (PDOException $e) {
echo "Erreur!: inscription impossible veillez contacter: bahaliou67@gmail.com <br/>";
die();
}
var_export($_POST);


Commenter la réponse de jordane45
Messages postés
6
Date d'inscription
vendredi 3 octobre 2014
Dernière intervention
17 janvier 2019
4
0
Merci
Finalement ça a marché avec se code

<?php

$host_name = 'OOOOOOO';
$database = 'YYYYYYYYYY';
$user_name = 'YYYYYYYYY';
$password = 'XXXXXXXXXX';

$bdd = null;
try {
//connexion a la base
$bdd = new PDO("mysql:host=$host_name; dbname=$database;", $user_name, $password);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Vérification de la validité des informations
if(!empty ($_POST)){
if (key_exists('pass',$_POST) && key_exists('pseudo',$_POST) && key_exists('email',$_POST)){
// Hachage du mot de passe
$pass_hache = password_hash($_POST['pass'], PASSWORD_DEFAULT);
// Insertion
$req = $bdd->prepare('INSERT INTO users(pseudo, pass, email, date_inscription) VALUES(:pseudo, :pass, :email, :date_inscription)');
$donnee = array(
'pseudo' => $_POST['pseudo'],
'pass' => $_POST['pass'],
'email' => $_POST['email'],
'date_inscription' => date("y-m-d")
);

$var = $req->execute($donnee);
if ($var){
echo "inscription reussi";
}
else{
echo "inscription échoué";
}

}
else{
echo "Information saisi incorrect veillez contacter: bahaliou67@gmail.com";
}

}else{
echo "Mauvaise façon d'envoi du formulaire contactez: bahaliou67@gmail.com";
}

} catch (PDOException $e) {
echo "Erreur!: cause: $e <br/> inscription impossible veillez contacter: bahaliou67@gmail.com <br/>";
die();
}



Commenter la réponse de lovesante