Script d'enregistrement dans base de donnée ne marche pas
Fermé
ghisloy
Messages postés
89
Date d'inscription
mercredi 12 novembre 2014
Statut
Membre
Dernière intervention
1 août 2016
-
Modifié par baladur13 le 9/12/2015 à 23:43
Utilisateur anonyme - 3 déc. 2015 à 16:45
Utilisateur anonyme - 3 déc. 2015 à 16:45
A voir également:
- Script d'enregistrement dans base de donnée ne marche pas
- Script vidéo youtube - Guide
- Formules excel de base - Guide
- Germain veut gérer les activités de son association avec une base de données. il a commencé à créer des tables dans un fichier, mais il n’est pas sûr du résultat. le fichier à télécharger contient uniquement le schéma de cette base de données. en l’état actuel, que peut-on en déduire ? - Forum Outlook
- Base de registre - Guide
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « reservations » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Webmastering
2 réponses
jordane45
Messages postés
38366
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 janvier 2025
4 720
3 déc. 2015 à 12:59
3 déc. 2015 à 12:59
Bonjour,
Ne confond pas la requête UPDATE et la requête INSERT
De façon "propre" une requete INSERT s'écrit :
de plus, il est préférable de récupérer proprement les variables AVANT de les utiliser
et enfin, ajoutes du debug en cas d'erreur (avec un or die)
Bref, ça devrait donner un truc du genre :
NB: Attention toutefois.. tu utilises une vielles syntaxes (et extension..) de mysql.
Je t'invite à lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
$insertion = "INSERT INTO contacter SET nom='".$_POST['identite']."', mail='".$_POST['email']."', objet='".$_POST['objet']."', message='".$_POST['message']."' ";
Ne confond pas la requête UPDATE et la requête INSERT
De façon "propre" une requete INSERT s'écrit :
INSERT INTO matable (champ1,champx) VALUE('toto','titi')
de plus, il est préférable de récupérer proprement les variables AVANT de les utiliser
et enfin, ajoutes du debug en cas d'erreur (avec un or die)
Bref, ça devrait donner un truc du genre :
$identite = !empty($_POST['identite']) ? $_POST['identite']: ''; $email = !empty($_POST['email']) ? $_POST['email']: ''; $objet = !empty($_POST['objet']) ? $_POST['objet']: ''; $message = !empty($_POST['message']) ? $_POST['message']: ''; $sql = "INSERT INTO contacter (nom,mail,objet,message) VALUE('$identite','$email','$objet','$message')"; /exécution de la requête SQL: $resultat = mysql_query($sql) or die("<br><b>ERREUR !</b><br>".mysql_error(). "<br><b>Requete :</b><br>".$sql);
NB: Attention toutefois.. tu utilises une vielles syntaxes (et extension..) de mysql.
Je t'invite à lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Utilisateur anonyme
3 déc. 2015 à 14:09
3 déc. 2015 à 14:09
Bonjour
La syntaxe INSERT INTO table SET champ1=valeur1, champ2=valeur2 est parfaitement valide. Pas besoin de la changer.
Par contre, tu testes
La syntaxe INSERT INTO table SET champ1=valeur1, champ2=valeur2 est parfaitement valide. Pas besoin de la changer.
Par contre, tu testes
if(isset($_POST['button']))mais aucun champ ne s'appelle 'button'. Tu devrais tester un champ qui existe réellement dans ton formulaire.
jordane45
Messages postés
38366
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 janvier 2025
4 720
3 déc. 2015 à 15:36
3 déc. 2015 à 15:36
La syntaxe INSERT INTO table SET champ1=valeur1, champ2=valeur2 est parfaitement valide. Pas besoin de la changer.
Il n’empêche que cette syntaxe est "propre" à Mysql contrairement à celle que je donne qui est "standard" à SQL.
Autant prendre les bonnes habitudes.
Pour le reste, au niveau perf elles sont identiques.