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 :

Formulaire de champ vide avec mysql_real_escape_string() [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2007
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2007
    Messages : 290
    Par défaut Formulaire de champ vide avec mysql_real_escape_string()
    Bonsoir,

    J'ai un petit soucis avec mysql_real_escape_string().
    Quand je récupère les champs d'un formulaire, après validation, et que j'ajoute aux variables ; mysql_real_escape_string(), leur valeur devient NULL.

    Si j'enlève ; mysql_real_escape_string(), leur valeur apparrait correctement.

    C'est la première fois que je rencontre un problème avec ; mysql_real_escape_string(), je l'applique pourtant correctement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pseudo = mysql_real_escape_string($_POST['pseudo']);

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Bonjour,

    si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $pseudo = mysql_real_escape_string($_POST['pseudo']);
    echo $pseudo ;
    ça n'affiche rien ?

    Est-ce que ce ne serait pas ta requête qui contiendrait l'erreur ?
    fais tu ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    od die( mysql_error());
    aprés ta requete ? Il y a t'il une erreur ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2007
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2007
    Messages : 290
    Par défaut
    J'ai deja testé l'echo, et il n'y a rien.
    Quand j'enleve "mysql_. . .", la, l'echo m'affiche la valeur de la variable.

    "Or die" ne m'affiche rien, il inscrit correctement le champ dans la bdd, mais vide.

    Voici le code concerné :
    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
    	if($_GET['valide'])
    	{  
     
    		// On récupere les champs dans des variables
    		$film = $_POST['film'];		
     		$pays = $_POST['pays'];
     		$url = $_POST['url'];
     		$pseudo = $_POST['pseudo'];
     
    		function msgErreur($msg) 
    		{    //    le message d'erreur
    		echo "<script language=\"javascript\">alert(\"".$msg."\");</script>\n";    //    le message 	d'erreur dans une boite d'alert javascript
    		}; 
     
     
    		//   Si le champ film est vide
    		if ($film == NULL ) 
     		{   
     
        	msgErreur("Veuillez indiquer le nom de la serie ou du film que vous désirez ajouter !");    //    message d'erreur
       		 return false;    //    sortie de fonction erreur
    		 }; 
     
    		//Si la valeur par defaut de l'url est NULL alors l'etat sera "en_cour"
    		if($url == NULL)
    		{
    			$etat = 'en_cours';
    		}
    		else
    		{
    			$etat = 'acheve';
    		}
     
    		// On enregistre les infos dans la base de données
    		include "include/conf.php";
    		$query = mysql_query("INSERT INTO requetes (film, pays, url, pseudo, etat) VALUES ('$film','$pays','$url','$pseudo','$etat')") or die('Erreur sur '.$query.'<br/>'.mysql_error());		
     
    		msgErreur("La base de données à correctement été mise à jour !");    //    message d'erreur
       		 return false; 
    	}
    Anisi, sans mysql_. . . il marche correctement.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Bonjour,
    où est placé votre mysql_connect() par rapport au mysql_real_escape_string() ? Parce que ce dernier doit être appelé après. C'est peut-être ça!

    Cordialement,
    DaRiaN.

  5. #5
    Membre éclairé
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2007
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2007
    Messages : 290
    Par défaut
    Salut!

    Mon mysql connect est bien placé apres mysql_real... .
    Il est dans "include conf"...

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Normalement, je le place avant car mysql_real_escape_string() prends en deuxième argument le lien de la connexion MySQL. Après, je ne sais pas si votre problème vient de là.

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

Discussions similaires

  1. Formulaire et champs selectionnés avec les sessions
    Par denzel21 dans le forum Langage
    Réponses: 1
    Dernier message: 14/12/2007, 12h19
  2. champ vide avec onsubmit
    Par afrodje dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/10/2007, 15h55
  3. Empêcher la validation d'un formulaire si champs à vide
    Par ghohm dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 16/07/2007, 16h21
  4. tester un champ vide avec changement de couleur
    Par lolothom dans le forum IHM
    Réponses: 4
    Dernier message: 13/05/2007, 21h08
  5. je ne peux pas poster un champs vide avec un TIBClientDataSet
    Par atb dans le forum Bases de données
    Réponses: 2
    Dernier message: 24/04/2007, 11h01

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