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 :

problème d'accent lors de l'insertion et selection de données [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    topo
    Inscrit en
    Novembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : topo
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2014
    Messages : 3
    Points : 9
    Points
    9
    Par défaut problème d'accent lors de l'insertion et selection de données
    J’ai un problème sur mon code. J’aimerai faire une table qui enregistre les renseignements (nom, mot de passe,...) de tous les membres qui peuvent accéder sur mon site. Il n’y a pas de problème l’hors de l’inscription mais si on veut connecter et si les renseignements contiennent d'accent la vérification ne marche pas dans le sens que je besoin (il dit « Nom non autorisé »ou « Vérifier le mot de passe svp. »).
    Est-ce que quelqu'un peut m'aider? Merci d'avance.


    voici mon code:

    code pour inscrire
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    <?php
     
    include 'config.php';
     
    if(isset($_POST['inscrire']))
    {
    //presse voutton inscrire
    	if(isset($_POST['nom']) AND !empty($_POST['nom']) AND isset($_POST['mdp1']) AND !empty($_POST['mdp1']) AND isset($_POST['mdp2']) AND !empty($_POST['mdp2']))
    	{
    	//champs remplis
    	$name = mysql_real_escape_string($_POST['nom']);	
    	$motdepasse = mysql_real_escape_string(md5($_POST['mdp1']));
    	$motdepasse2 = mysql_real_escape_string(md5($_POST['mdp2']));
     
    	$sql = mysql_query ('SELECT nom FROM login WHERE nom = "'.$name.'"');
    	$result = mysql_fetch_array ($sql);
     
    	if (!isset($result['nom']))
    	{
     
    	//verification de longueur de nom
    	$longueur_nom = strlen($name);
    		if($longueur_nom <= 50)
    		{
    		//nom à la norme
    			if($motdepasse == $motdepasse2)
    			{
    			//si les deux mots de passe entrés sont identiques
     
                            //on verifie s'il est dejà utilisé ou pas
    			$sql2 = mysql_query ('SELECT mdp FROM login WHERE mdp = "'.$motdepasse.'"');
    			$result2 = mysql_fetch_array ($sql2);
     
                            //si le mdp n'exist pas dans la base
    			if (!isset($result2['mdp']))
    				{
     
     
    				mysql_query('INSERT INTO login VALUE("","'.$name.'","'.$motdepasse.'")');
    				$succes = 'Felicitation!Vous pouvez connecter maintenant';
    				}
    			else
    				{
    				$erreur = 'le mot de passe est déjà utilisé';
    				}
    			}
    			else
    			{
    			//le mdp exist 
    			$erreur = 'les deux mots de passe ne sont pas conformes';
    			}
    		}
    		else
    		{
    		$erreur = 'Le nom que vous avez entré est trop long ';
    		}
    	}
    	else
    	{
    	$erreur = 'Le nom que vous avez entré est déjà utilisé';
    	}
    	}
    	else
    	{
    	//champs vides
    	$erreur = 'completer les champs';
    	}
    }
     
     
    ?>
    et voici le code pour connecter

    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
    45
    46
    47
    48
    49
    50
    <?php
     
    include 'config.php';
     
    if(isset($_POST['entrer']))
    {
    //presse boutton inscrire
    	if(isset($_POST['nom']) AND !empty($_POST['nom']) AND isset($_POST['mdp1']) AND !empty($_POST['mdp1']))
    	{
    	//champs remplis
    	$name = $_POST['nom'];	
    	$motdepasse = md5($_POST['mdp1']);	
     
            //checher dans la base le nom entré
    	$sql = mysql_query ('SELECT * FROM login WHERE nom = "'.$name.'"');
    	$result = mysql_fetch_array ($sql);
     
    		if (isset($result['nom']))
    		{
    		//s'il existe
                    //on verifie si le mdp correspond au nom
    			if($motdepasse == $result['mdp'])
    			{
    			//bon mot de passe
    			$_SESSION['nom'] = $name;
    			header('location: interface.html');				
    			}
    			else
    			{
    			//mot de passe erroné
    			$erreur = 'Verifier le mot de passe svp.';
    			}
    		}
    		else
    		{
    		$erreur = 'Nom non autorisé';
    		}
    	}
    	else
    	{
    	//champs vides
    	$erreur = 'completer les champs';
    	}
    }
    else
    {
    echo '<p class="change_link">','<a href="update.php" class="to_register">','Modifier mdp','</a>','<a href="suscribe.php" class="to_register">','Inscrire','</a>','</p>';
    }
     
    ?>

  2. #2
    Membre habitué
    Homme Profil pro
    sans emploi
    Inscrit en
    Février 2014
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : sans emploi
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2014
    Messages : 365
    Points : 131
    Points
    131
    Par défaut
    et si tu remplace les é,è,ê ...?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_replace($search, $replace, $nom)

  3. #3
    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 dois avoir un problème d'encodage
    Vérifie que tes fichiers .php ont bien le même encodage que la connexion que tu utilises avec ta base de données.
    Si tu es perdu, passe tout en UTF8 :
    http://j-willette.developpez.com/tut...-site-en-utf8/

    Au passage quand même c'est assez inhabituel d'exiger des mots de passe uniques et surtout d'indiquer qu'un mot de passe est déjà utilisé.
    Si une personne malveillante sait qu'un mot de passe existe dans la base de donnée, elle n'a plus qu'a essayer les membres un par un pour trouver à qui est le mot de passe.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    topo
    Inscrit en
    Novembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : topo
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2014
    Messages : 3
    Points : 9
    Points
    9
    Par défaut
    MERCI.c'est meilleur.

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

Discussions similaires

  1. problème d'accents lors d'insert
    Par jeandu69 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 26/09/2013, 14h25
  2. Problême d'accent lors de la création d'un fichier txt
    Par maxmarie dans le forum Windows Mobile
    Réponses: 15
    Dernier message: 24/08/2007, 21h59
  3. [Système] Problème de doublon lors d'un insert (voir fin)
    Par gregory.bts dans le forum Langage
    Réponses: 7
    Dernier message: 04/08/2007, 03h05
  4. Réponses: 3
    Dernier message: 07/06/2007, 13h22
  5. Problème d'accent lors d'une requête
    Par escape dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 05/12/2006, 13h48

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