Probléme pour insérer formulaire dans bdd

Résolu/Fermé
georges - 21 juil. 2010 à 11:23
 georges - 29 juil. 2010 à 16:49
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

A voir également:

15 réponses

avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
21 juil. 2010 à 11:36
Salut.
Sans ton code, imposssible de t'aider.
0
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);
}
?>
0
Natio78 Messages postés 719 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 27 mai 2013 96
Modifié par Natio78 le 21/07/2010 à 15:52
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!
0
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?
0

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.
0
Natio78 Messages postés 719 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 27 mai 2013 96
Modifié par Natio78 le 21/07/2010 à 16:22
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!
0
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.
0
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".
0
Plus personne pour m'aider :( .
0
up :(
0
Je retente ma chance car je n'ai toujours pas trouvé de solution...
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
27 juil. 2010 à 13:22
Sur la page cible du formulaire, que donne un var_dump($_POST) ?
0
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.
0
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??
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
28 juil. 2010 à 17:27
Tu pourrais inclure ces 3 scripts dans celui de la cible du formulaire ...
0
C'est ce que j'ai fait, ca marche très bien, merci.
0