Probléme pour insérer formulaire dans bdd
Résolu
georges
-
georges -
georges -
Bonjour,
Je souhaite insérer les données que les utilisateurs mettent dans le formulaire dans une base de données.
Le probléme c'est que lorsque je clique pour valider le formulaire j'ai une page blanche avec rien dessus pourtant le fichier pour insérer les données dans la base de données est bien appelé.
Et il n'y a aucun enregistrement dans la base.
Quelqu'un a t-il déja eu ce probléme ? et comment la t-il réglé?
Merci
Je souhaite insérer les données que les utilisateurs mettent dans le formulaire dans une base de données.
Le probléme c'est que lorsque je clique pour valider le formulaire j'ai une page blanche avec rien dessus pourtant le fichier pour insérer les données dans la base de données est bien appelé.
Et il n'y a aucun enregistrement dans la base.
Quelqu'un a t-il déja eu ce probléme ? et comment la t-il réglé?
Merci
A voir également:
- Probléme pour insérer formulaire dans bdd
- Whatsapp formulaire opposition - Guide
- Insérer une vidéo dans powerpoint - Guide
- Insérer signature word - Guide
- Formulaire de réclamation facebook - Guide
- Insérer liste déroulante excel - Guide
15 réponses
Voici un résumé du code sans toutes les valeurs :
<?php
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
.................
function connectFormulaire(){
$c = mysql_connect ('localhost', 'root', '***');
mysql_select_db('ma_base', $c);
$sql = 'INSERT INTO ma_table VALUES ('$nom', '$prenom',..........)
mysql_query ($sql);
if (!$sql){
die('Erreur de requéte:'.mysql_error());
}else{
echo 'La personne est ajoutée';
}
mysql_close($c);
}
?>
<?php
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
.................
function connectFormulaire(){
$c = mysql_connect ('localhost', 'root', '***');
mysql_select_db('ma_base', $c);
$sql = 'INSERT INTO ma_table VALUES ('$nom', '$prenom',..........)
mysql_query ($sql);
if (!$sql){
die('Erreur de requéte:'.mysql_error());
}else{
echo 'La personne est ajoutée';
}
mysql_close($c);
}
?>
euh c'est peut être un bout de code exhaustif mais à vu de nez déjà tu as une fonction connectFormulaire qui permet de se connecter à la bdd, mais tu ne l'appelles pas donc impossible d'insérer des données...
ajoute des petits echo $_POST['nom']; et echo $_POST['prenom']; pour être sur de bien récupérer les valeurs
edit: en plus c'est normal que tu es une page blanche car même si tu appelles ta fonction elle ne retourne rien...
Enjoy!
ajoute des petits echo $_POST['nom']; et echo $_POST['prenom']; pour être sur de bien récupérer les valeurs
edit: en plus c'est normal que tu es une page blanche car même si tu appelles ta fonction elle ne retourne rien...
Enjoy!
Merci de ta réponse.
Même en appelant la fonction ou en mettant le code sans fonction ca ne change rien.
Et en mettant des echo sur les valeurs retournés je n'ai rien non plus.
Mais si la requéte ne marche, le message d'erreur devrait s'afficher nan?
Même en appelant la fonction ou en mettant le code sans fonction ca ne change rien.
Et en mettant des echo sur les valeurs retournés je n'ai rien non plus.
Mais si la requéte ne marche, le message d'erreur devrait s'afficher nan?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
- as tu bien défini une base de données?
- sur quel type de serveur?
- locale ou pas?
- comment as-tu créé et paramétré ton formulaire?
- avec quel language programmes-tu?
- l'accès sgbd est-il fait correctement, ou bien est-ce juste un problème d'écriture?
Sans info, impossible de te répondre.
- sur quel type de serveur?
- locale ou pas?
- comment as-tu créé et paramétré ton formulaire?
- avec quel language programmes-tu?
- l'accès sgbd est-il fait correctement, ou bien est-ce juste un problème d'écriture?
Sans info, impossible de te répondre.
tu as mis tes echos tout est haut dès le début? déjà si tes valeurs sont vides ça le fait pas....
ajoute ça sur ta page de traitement:
<?php
session_start();
if(!empty($_POSt['nom']) && !empty($_POST['prenom']))
{
là tu mets tout ton code actuel
}
else
{
echo "les données sont vides";
}
?>
Sinon je viens de voir que dans ta fonction tu ne passes rien en paramètres (tes variables nom, prenom) et puis dans ce cas précis utiliser une fonction ça ne sert à rien, elle est bien trop spécifique
Enjoy!
ajoute ça sur ta page de traitement:
<?php
session_start();
if(!empty($_POSt['nom']) && !empty($_POST['prenom']))
{
là tu mets tout ton code actuel
}
else
{
echo "les données sont vides";
}
?>
Sinon je viens de voir que dans ta fonction tu ne passes rien en paramètres (tes variables nom, prenom) et puis dans ce cas précis utiliser une fonction ça ne sert à rien, elle est bien trop spécifique
Enjoy!
Pour répondre au question de Rashel :
Ma base de donnée est bien créé avec tout les paramètres que je doit y placer.
Pour l'instant je suis en phase de développement donc je suis en local.
Mon formulaire est en HTML et je passe les valeurs en POST, et il y un contrôle de valeur en javascript.
C'est du HTML/php et un peu de javascript.
Je ne sais pas comment faire pour vérifier que l'accés à la base est correcte car quand je met des echos un peu partout il n'y a rien d'écrit.
Nation78 : J'ai mis exactement ce que tu m'a dit mais rien n'y fait la page est toujours blanche et j'ai enlevé la fonction j'ai mis le code à la suite.
Pour mes variables nom, prenom,.... je passe en paramétre la donnée récupéré du formulaire avec POST nan?
ps : même un echo avec un simple texte s'affiche pas donc ca doit être un probléme à la con.
Ma base de donnée est bien créé avec tout les paramètres que je doit y placer.
Pour l'instant je suis en phase de développement donc je suis en local.
Mon formulaire est en HTML et je passe les valeurs en POST, et il y un contrôle de valeur en javascript.
C'est du HTML/php et un peu de javascript.
Je ne sais pas comment faire pour vérifier que l'accés à la base est correcte car quand je met des echos un peu partout il n'y a rien d'écrit.
Nation78 : J'ai mis exactement ce que tu m'a dit mais rien n'y fait la page est toujours blanche et j'ai enlevé la fonction j'ai mis le code à la suite.
Pour mes variables nom, prenom,.... je passe en paramétre la donnée récupéré du formulaire avec POST nan?
ps : même un echo avec un simple texte s'affiche pas donc ca doit être un probléme à la con.
Je vérifie les données du formulaire avec le javascript, puis à la fin je place :
else{
document.myform.method = "POST";
document.myform.action = "bdd_formulaire.php";
document.myform.submit();
Je met cela mais je pense pas que c'est ca qui pose probléme car dans la page blanche, l'url est bien "bdd_formulaire.php".
else{
document.myform.method = "POST";
document.myform.action = "bdd_formulaire.php";
document.myform.submit();
Je met cela mais je pense pas que c'est ca qui pose probléme car dans la page blanche, l'url est bien "bdd_formulaire.php".
Il n'y a rien qui s'écrit sur la page du navigateur (page blanche) lors de la validation du formulaire avec la commande qui tu m'as dit.
Probléme réglé, enfin...Merci.
Par contre, à la fin de mon formulaire j'ai un code javascript qui marche très bien et qui vérifie les valeurs rentrées par l'utilisateur.
Mais au moment de la validation, je doit appeler 3 fichiers ".php" afin d'envoyer des infos vers 2 tables + générer un pdf. Et cela ne marche pas avec document.myform.action =...... car on ne peut en faire qu'un.
Donc avez vous une idée??
Par contre, à la fin de mon formulaire j'ai un code javascript qui marche très bien et qui vérifie les valeurs rentrées par l'utilisateur.
Mais au moment de la validation, je doit appeler 3 fichiers ".php" afin d'envoyer des infos vers 2 tables + générer un pdf. Et cela ne marche pas avec document.myform.action =...... car on ne peut en faire qu'un.
Donc avez vous une idée??