Insertion dans une base de donnée en php [Résolu/Fermé]
Signaler
aure2015
jordane45
- Messages postés
- 93
- Date d'inscription
- dimanche 11 janvier 2009
- Statut
- Membre
- Dernière intervention
- 30 mai 2020
jordane45
- Messages postés
- 31509
- Date d'inscription
- mercredi 22 octobre 2003
- Statut
- Modérateur
- Dernière intervention
- 26 février 2021
A voir également:
- Inserer des données dans une table mysql php
- Insertion dans une base de donnée en php ✓ - Forum - PHP
- Insertion dans une base de données avec PHP ✓ - Forum - PHP
- Insertion des données paypal dans la base de données en php ✓ - Forum - PHP
- Connexion à la base de données mysql php pdo - Conseils pratiques - PHP
- Problème communication base de donnée et php ✓ - Forum - PHP
1 réponse
jordane45
- Messages postés
- 31509
- Date d'inscription
- mercredi 22 octobre 2003
- Statut
- Modérateur
- Dernière intervention
- 26 février 2021
Bonjour,
Déjà.... tu mélanges du mysqli style procédurale.. et du style objet.
Il faut l'un ou l'autre.
Voici ton code un peu amélioré... et corrigé
Je t'invite fortement à lire ceci avant de poursuivre dans ton développement....
https://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Déjà.... tu mélanges du mysqli style procédurale.. et du style objet.
Il faut l'un ou l'autre.
Voici ton code un peu amélioré... et corrigé
<?php //Affichage des erreurs php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //connexion à la bdd $con = mysqli_connect('localhost','root','','test'); if (!$con) die('Erreur de connection:' . mysqli_error($con)); } //mysqli_select_db($con,"test"); // pas utile vu que tu la selectionne déjà dans la connexion //récupération PROPRE des variables AVANT de les utiliser $Nom = !empty($_GET['Nom']) ? $_GET['Nom']: NULL; $Prenom = !empty($_GET['Prenom']) ? $_GET['Prenom']: NULL; $Email = !empty($_GET['Email']) ? $_GET['Email']: NULL; $Telephonne = !empty($_GET['Telephonne']) ? $_GET['Telephonne']: NULL; $HashPass = !empty($_GET['HashPass']) ? $_GET['HashPass']: NULL; $DateNaissance = !empty($_GET['DateNaissance']) ? $_GET['DateNaissance']: NULL; $time = strtotime($DateNaissance); $DateNaissance = date('d/m/Y',$time); if($Nom && $Prenom){ $sql="INSERT INTO users (Nom, Prenom, DateNaissance, Email, Telephonne, HashPass) VALUES ('".$Nom."','".$Prenom."','".$DateNaissance."','".$Email."','".$Telephonne."','".$HashPass."')"; if (!mysqli_query($con,$sql)){ echo("Error description: " . mysqli_error($con)); } } mysqli_close($con);
Je t'invite fortement à lire ceci avant de poursuivre dans ton développement....
https://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
J'ai posé ma question trop vite!
Si non, je récupère des données d'un xmlhttp.open , du coup pas besoin! de vérifier si les données sont vides!
Mais merci quand même pour ton aide!
Je poste quand même ma solution:
Récupérer "proprement" les variables AVANT de les utiliser en est une..... peu importe la source des données.
Cela évite de nombreux souci.
Sans compter que tu n'as pas lu le code que je t'ai donné.... pour preuve..; ta ligne
qui ne sert strictement à rien..... vu qu'avec mysqli tu selectionne déjà la bdd lors de la connexion.
Idem sur le fait de mélanger du procédural et de l'objet mysqli ...
... copier du code c'est un début. La suite c'est de chercher à le comprendre et à l'améliorer lorsque c'est possible.....
Bonne continuation.