Insertion de données dans une base de données

Résolu
lovesante Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
lovesante Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
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.
A voir également:

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

https://forums.commentcamarche.net/forum/affich-37584941-php-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-poster-un-extrait-de-code
0
lovesante Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 

<?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);


0
lovesante Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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();
}



0