IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

mysql connection et insertion avec php


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 10
    Points
    10
    Par défaut mysql connection et insertion avec php
    Bonjour

    je suis debutant en php et j'ai tenté d'ecrire un petit formulaire avec une insertion dans une base mysql.
    Le tout mis sur wampserver.

    j'avais tout réussi et tout s'inserer bien mais bizarrement du jour au lendemain sans rien changer plus rien ne marche.
    j'ai beau regarder ma base mais rien ne s'inscrit à l'interieur pourtant mon code rentre bien dans les requetes d'insertion et mon message de reussite s'affiche correctement.
    Puis quand je verifie avec phpmyadmin rien n'est enregistré.
    j'ai verifié mon login et mdp (que je n'ai pas touché: root et "").

    c'est à devenir fou.

    ci dessous le html:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    <body>
       </p>
    	<form name="form1" method="post" action="data3.php">
    		<p>
    		Prenom* <input type="text" name="prenom" /> <br />
    		Nom (d'épouse pour les filles)*<input type="text" name="nom" /> <br />
    		Nom de jeune fille <input type="text" name="nomJF" /> <br />
    		Date de naissance*<input type="text" name="anniversaire" /><br />
    		Profession*<input type="text" name="profession" /> <br />
    		Société <input type="text" name="societe" /> <br />
    		Prénom du conjoint <input type="text" name="prenomConjoint" /> <br />
    		Photo* <input type="file" name="photo" size="30"><br />
    		<input type="submit" name="submitBouton" value="Valider">
    		<input type="reset" name="resetBouton" value="Annuler">
    		</p>
    	</form>
    </body>

    Ci dessous le code php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    <?php		
     
    	$base= mysql_connect("localhost", "root", "") OR die ("la connexion a echoué");
    	mysql_select_db("test", $base);
     
    	$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
    	$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
    	$nomJF = mysql_real_escape_string(htmlspecialchars($_POST['nomJF']));
    	$anniversaire = mysql_real_escape_string(htmlspecialchars($_POST['anniversaire']));
    	$profession = mysql_real_escape_string(htmlspecialchars($_POST['profession']));
    	$societe = mysql_real_escape_string(htmlspecialchars($_POST['societe']));
    	$prenomConjoint = mysql_real_escape_string(htmlspecialchars($_POST['prenomConjoint']));
     
     
    // Ensuite on insert dans la base
    	mysql_query("INSERT INTO eleves VALUES('', '$prenom', '$nom', '$nomJF', '$anniversaire', '$profession', '$societe', '$prenomConjoint')");
     
    // On se déconnecte de MySQL
    	mysql_close();
     
    // dossier où sera déplacé le fichier
    	$content_dir = 'photos/';
    	$tmp_file = $_FILES['photo']['tmp_name'];
    	if( !is_uploaded_file($tmp_file) )
    	{
            	exit("Le fichier est introuvable");
    	}
     
    // on vérifie maintenant l'extension
    	$type_file = $_FILES['photo']['type'];
     
    	if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
    	{
    		exit("Le fichier n'est pas une image");
    	}
     
    // on copie le fichier dans le dossier de destination
    	$name_file = $_FILES['photo']['name'];
    	if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
    	{
    		exit("Impossible de copier le fichier dans $content_dir");
    	}
    ?>
    ps: l'upload de photo marche

    Si vous avez dejà eu ce genre de cas merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    et mon message de reussite s'affiche correctement.
    il est ou ce message ?

    Sinon met après ta requete un
    pour voir s'il y en a

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 10
    Points
    10
    Par défaut

    Sinon met après ta requete un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    echo mysql_error();
    cela m'a donné:
    Column count doesn't match value count at row 1

    j'ai vérifié le nombre de mes colonnes et en effet il n'y avait le bon nombre mais apres avoir rectifié, ca ne marche toujours pas et le pire c'est que ca continue d'afficher cela.

    Quant à mon message je ne lai pas mis sur le forum mais il se trouve en bas de mon code.

    Peux tu m'expliquer ce message d'erreur stp?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    S'il te dit ça, c'est que c'est vrai

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 10
    Points
    10
    Par défaut
    sympa comme réponse mais pas tres constructive pour un debutant...



    est il possible de me l'expliquer?
    où n'y a t il pas le meme nombre de colonnes?

    dans ma requete j'en ai 21 et sur ma table aussi

    donc je ne comprends pas

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu es passé de 7 à 21 champs ?

    Si tu veux renseigner que certains champs, spécie les :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table (champ1, champ2) VALUES (value1, value2)

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 10
    Points
    10
    Par défaut
    Désolé d'embrouiller avec mes codes et mes tests...

    en fait comme avec mes 21 champs ca ne marchait plus, j'ai essayé en reduisant mes input pensant que ca venait d'un champ...mais non!

    donc sur le forum j'ai mis la forme reduite.

    puis quand tu m'as donné la solution du mysql_error je l'ai testé sur la version longue et courte mais ca ne marche pas...

    maintenant je vais tenter en specifiant.

    le plus etrange c'est que tout marchait.

    J'ai fait un autre test:
    j'ai repris le code d'un autre formulaire et je l'ai testé sur une autre base...jusque là ca marche.
    puis j'ai juste remplacer les input par les miens et l'ouverture de la base par la mienne ainsi que le insert par celui qui correspond à mes input et ma base et la meme erreur...rien ne marche...

    merci pour l'aide en tout cas

  8. #8
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 10
    Points
    10
    Par défaut
    Autre chose

    je viens de reinstaller un wamp sur Win7 (au travail)[tous les post d'avant etant sous WinXP] et j'ai recree une base nouvelle, mais là j'ai mieux:
    Connexion réinitialisée
    La connexion avec le serveur a été réinitialisée pendant le chargement de la page.
    et pourtant wamp est online et tout marche

    mauvais début avec PHP

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu as un mysql_close(), retire le.

  10. #10
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 29
    Points : 27
    Points
    27
    Par défaut
    vérifie si tu as des champs vides

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (isset($_POST['prenom']) and isset($_POST['nom']) and .... {
     
            $prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
     
            $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
     
    }
    [EDIT] voir aussi post #6

Discussions similaires

  1. Connection openID Google avec php-openid de janrain
    Par franco_documa dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 25/04/2013, 15h13
  2. problème d'insertion avec php
    Par zeke45 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 17/11/2010, 15h02
  3. [MySQL] table MySQL vers document XML avec PHP
    Par ecdxml dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 06/12/2007, 01h10
  4. [ODBC] Requete d'insertion avec php
    Par rolph dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/11/2006, 13h18
  5. [SimpleXML] Comment passer de XML à MySQL et vice-versa avec PHP ?
    Par Ben42 dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 05/12/2005, 21h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo