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 :

[sql] le code ne veut plus rien enregistrer [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut [sql] le code ne veut plus rien enregistrer
    bonjour

    j'ai fait un code d'inscription en php , mais le problème il ne veut plus enregistré
    je ne comprend pas pourquoi

    Code php : 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
    	  $musik = microtime();
    $musik1 = "avatar/".str_replace(' ','',$musik);
    $musik2 = $musik1.".".$extension_upload;
    $adresse = move_uploaded_file($_FILES['avatar']['tmp_name'],$musik2);
     
    $po = strtotime($j-$m-$a. '00:00:00');
    $mdp = sha1(mysql_real_escape_string($_POST['mdp']));
    $date = mysql_real_escape_string($po);
    $adresse = mysql_real_escape_string($_POST['adresse']);
    $pays = mysql_real_escape_string($_POST['pays']);
    $region = mysql_real_escape_string($_POST['region']);
    $vile = mysql_real_escape_string($_POST['ville']);
    $album = mysql_real_escape_string($_POST['album']);
    $clip = mysql_real_escape_string($_POST['clip']);
    $chanson = mysql_real_escape_string($_POST['chanson']);
    $membre = mysql_real_escape_string($_POST['membre']);
    	mysql_query('insert into membre values("","'.$pseudo.'","'.$mdp.'","'.$email.'","'.$adresse.'","'.$date.'","'.$_POST['sexe'].'","'.$_POST['pack'].'","'.$pays.'","'.$region.'","'.$vile.'","'.$album.'","'.$clip.'","'.$chanson.'","'.$membre.'","0","0")') or die (mysql_error());

    merci de m'aider
    schats

  2. #2
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    $date n'est pas correct, t'as écrit :

    $po = strtotime($j-$m-$a. '00:00:00');


    au lieu de

    $po = strtotime($j-$m-$a.' 00:00:00');



    De plus, ta synthaxe d'INSERT INTO est pas terrible (enfin, j'suis pas fan :/)

  3. #3
    Membre expérimenté
    Avatar de (Benoit)
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 184
    Par défaut
    Tu as un msg d'erreur ?

    Il faut éviter de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    insert into membre values ("","'.$pseudo.'","'.$mdp.'","'.$email.'","'.$adresse.'","'.$date.'","'.$_POST['sexe'].'","'.$_POST['pack'].'","'.$pays.'","'.$region.'","'.$vile.'","'.$album.'","'.$clip.'","'.$chanson.'","'.$membre.'","0","0")')
    mais faire plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    insert into membre (nomchamp1, nomchamp2, ...) values ("toto", "tata", ...)

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    c'est ou il y a un problème j'ai aucun message d'erreur :s
    par contre faurdras peu être que je mette tout le code php

    darkstar123456>merci je le met tout de suite

    (Benoit)> ah , les deux facon marche :s maitenant je sais pas laqelle est la meilleur :s

  5. #5
    Membre éclairé
    Avatar de onet
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    365
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2002
    Messages : 365
    Par défaut
    Citation Envoyé par schats Voir le message
    c'est ou il y a un problème j'ai aucun message d'erreur :s
    par contre faurdras peu être que je mette tout le code php

    darkstar123456>merci je le met tout de suite

    (Benoit)> ah , les deux facon marche :s maitenant je sais pas laqelle est la meilleur :s
    La seconde est meilleurs. Car si un jour tu rajoute un champ dans ta table, par exemple au milieu, si tu ne spécifie pas l'équivalence des valeurs, ta requete ne va pas tenir compte du nom des champs, mais uniquement des positions. => ca ne fonctionnera plus.

    SI tu veux savoir ce qui ne fonctionne pas, fait un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo 'insert into membre values("","'.$pseudo.'","'.$mdp.'","'.$email.'","'.$adresse.'","'.$date.'","'.$_POST['sexe'].'","'.$_POST['pack'].'","'.$pays.'","'.$region.'","'.$vile.'","'.$album.'","'.$clip.'","'.$chanson.'","'.$membre.'","0","0")'
    Et tente de l'injecter directement dans ta base (via phpmyadmin, par exemple). Tu saura tout de suite ce qu'il se passe.

    Onet

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    onet> si tu le dit :p

    j'ai fait ce que tu m'a dit il m'affiche rien , donc c'est pas que la requette :s
    je mettrais le code quand j'aurais localiser le probème

  7. #7
    Membre éclairé
    Avatar de onet
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    365
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2002
    Messages : 365
    Par défaut
    Euh...

    tu ne veux pas plutot afficher les erreurs php? Ca t'aidera a savoir d'ou viens le problème. Car bon, tu m'a l'air sympa, mais de la à lire et interpréter à la volée 200 lignes de codes pour essayer de savoir ou le script plante, c'est pa que j'ai mieux a faire, mais voila :p

    Es-tu sur que ton code entre dans ta boucle else finale? Essaie de mettre des breakpoint (die('toto') :p) pour savoir jusqu'ou le script va ou plante.

    Et... conseil de prog... Fais gaffe a l'indentation, c'est limite illisible :s.

    Onet

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    ben le problème j'ai aucune erreur sql n'y php :s

    je vais regarde en mettant des écho partout et je revient

    j'ai trouver
    explication du code si il n'y a pas d'adresse n'y quelque chose dans le fille on dit qu'il n'y a pas d'avart si il y a quelque chose dans d'adresse on vire tout ce contient le fille
    Code php : 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
    elseif((empty($_POST['adresse']) and !isset($_POST['adresse']) or empty($_FILES['avatar']) and !isset($_FILES['avatar'])) ==1)
    	{
    	echo '- Merci de mettre un avatar<br />';
    	}
     
    	elseif(!empty($_FILES['avatar']) and isset($_FILES['avatar']))
    	{
    	if($_FILES['avatar']['size']> $xma)
    {		
    	echo '- Fichier trop gros<br />';	
     }
     elseif (!in_array($extension_upload,$extensions_valides))	
    {
     echo '- Mauvaise extention<br />';
    }
     
    }
    il me fait le contraire que je veut :s

  9. #9
    Membre éclairé
    Avatar de onet
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    365
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2002
    Messages : 365
    Par défaut
    Citation Envoyé par schats Voir le message
    ben le problème j'ai aucune erreur sql n'y php :s

    je vais regarde en mettant des écho partout et je revient
    Oui, mais si tu n'as pas d'erreur, et que ton code ne marche pas, c'est soit que tu as un test qui fait sauter tout ton script, et n'affiche rien, soit que tu as des erreurs, mais que ta configuration de php ne les affiche pas . Et dans ce cas, demande lui de les afficher, et tu auras tes infos!

    Onet

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    Citation Envoyé par onet Voir le message
    Oui, mais si tu n'as pas d'erreur, et que ton code ne marche pas, c'est soit que tu as un test qui fait sauter tout ton script, et n'affiche rien, soit que tu as des erreurs, mais que ta configuration de php ne les affiche pas . Et dans ce cas, demande lui de les afficher, et tu auras tes infos!

    Onet
    désoler pour le double poste , mais j'aimerais savoir comment afficher les erreur php :s
    avec les echo :s
    si c'est avec les echo la fin du formulaire ne s'affiche pas :s
    le seul echo qui s'affiche c'est quand il y a la requette soit
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    elseif (isset($_POST['pseudo'], $_POST['email']) )
     { 
    $pseudo = mysql_real_escape_string($_POST['pseudo']);
    $email = mysql_real_escape_string($_POST['email']);
     
              $requette1 = mysql_query('select * from membre where pseudo ="'.$pseudo.'" or email="'.$email.'"')or die (mysql_error());
    	  $nbr = mysql_num_rows($requette1);
    	  if($nbr != 0)
    	  {
    	     echo '- Pseudo ou E-mail deja pris<br />';
    	  }
     }

    merci de m'aider
    schats

  11. #11
    Membre éclairé
    Avatar de onet
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    365
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2002
    Messages : 365
    Par défaut
    Recherche google: http://www.google.ch/search?q=affich...ient=firefox-a

    Première réponse: http://www.phportail.net/forum/ftopic2360.php

    Un peu de recherche sur google ne fait pas de mal...

    Onet

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    avec les erreur "php"
    j'ai
    Notice: Undefined index: m in /homepages/30/d208894068/htdocs/guit2o59/inscription.php on line 291

    Notice: Undefined index: j in /homepages/30/d208894068/htdocs/guit2o59/inscription.php on line 291

    Notice: Undefined index: a in /homepages/30/d208894068/htdocs/guit2o59/inscription.php on line 291

    Notice: Undefined index: pseudo in /homepages/30/d208894068/htdocs/guit2o59/inscription.php on line 292

    les code de ces ligne
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $date = checkdate($_POST['m'],$_POST['j'],$_POST['a']);// ligne 291
    	  if(strlen($_POST['pseudo'])==0)

    je ne comprend pas car il sont bien défini
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="text" size="2" name="j"/>/<input type="text" size="2" name="m"/>/<input type="text" size="4" name="a"/> ( jj / mm / aaaa )<br />//pour la date de naissance
    <input type="text" name="pseudo"/>// pour le pseudo

    je précise quand même que c'est quand on ne valide pas
    quand on valide on n'a plus rien :s

    merci de m'aider

    onet > je ne pensais pas cette fonction :s

  13. #13
    Membre éclairé
    Avatar de onet
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    365
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2002
    Messages : 365
    Par défaut
    Fait un
    Au début de ta page. Tu sauras tout de suite si tes variables sont définies ou pas.

    Dans ton cas, il s'agit de notice, donc ca ne devait pas bloquer ta page. En conséquence, c'est qu'il y a un souci dans ton algo de test. Tu dois avoir une valeur qui fait que le script ne rentre jamais dans tes boucles.

    POur cela, il va te falloir y aller a coup d'echo. Avant chaque if/foreach/else/for/... tu affiche au moyen d'un echo ou d'un die() la valeur que tu test/traite.

    Et tu devrais voir ce qui pose souci.

    Onet

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    en faite c'est un problème d'écriture entre strlen et strlent ...
    bizare qu'elle me l'affichais pas :s

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/07/2014, 01h11
  2. VB ne veut plus afficher les erreurs de code
    Par diffy dans le forum VBA Access
    Réponses: 1
    Dernier message: 08/08/2008, 09h42
  3. Requête SQL- ressortir le plus récent enregistrement
    Par shirya dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 28/05/2008, 21h38
  4. Le journal d'outlook n'enregistre plus rien?
    Par jmcrib dans le forum Outlook
    Réponses: 2
    Dernier message: 19/10/2007, 07h57
  5. [Kylix] Je n'y comprends plus rien
    Par fafamonteko dans le forum EDI
    Réponses: 5
    Dernier message: 02/03/2004, 16h48

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