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 :

Besoin d'Aide Php avec Mysql


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Employer LeaderPrice
    Inscrit en
    Mai 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Employer LeaderPrice
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2012
    Messages : 9
    Points : 5
    Points
    5
    Par défaut Besoin d'Aide Php avec Mysql
    Bonjour a tous voila je suis en creation d'un espace membres pour mon site web voila et la page de modification me dit : Une erreur est survenue lors des modifications, mes je ne comprend pas pourquoi cela , j'ai laisser le code valide de la page d'inscription ci cela peut aider !!

    2em problème :
    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
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    <?php
    include('config.php')
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
            <title>Espace membre</title>
        </head>
        <body>
        	<div class="site">
            <div class="moteur_recherche">
                <form action="http://www.google.fr/search">
                    <div>
                        <input type="hidden" name="hl" value="fr" />
                        <input type="text" name="q" size="34" />
                        <input type="submit" value="OK" />
                    </div>
                </form>
    		</div>
            <div class="header">
    	        LoCaSkiN
            </div>
    		</div>
    <?php
    //On verifie si lutilisateur est connecte
    if(isset($_SESSION['username']))
    {
    	//On verifie si le formulaire a ete envoye
    	if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar'], $_POST['age']))
    	{
    		//On enleve lechappement si get_magic_quotes_gpc est active
    		if(get_magic_quotes_gpc())
    		{
    			$_POST['username'] = stripslashes($_POST['username']);
    			$_POST['password'] = stripslashes($_POST['password']);
    			$_POST['passverif'] = stripslashes($_POST['passverif']);
    			$_POST['email'] = stripslashes($_POST['email']);
    			$_POST['avatar'] = stripslashes($_POST['avatar']);
    			$_POST['age'] = stripslashes($_POST['age']);
    		}
    		//On verifie si le mot de passe et celui de la verification sont identiques
    		if($_POST['password']==$_POST['passverif'])
    		{
    			//On verifie si le mot de passe a 6 caracteres ou plus
    			if(strlen($_POST['password'])>=6)
    			{
    				//On verifie si lemail est valide
    				if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
    				{
    					//On echape les variables pour pouvoir les mettre dans une requette SQL
    					$username = mysql_real_escape_string($_POST['username']);
    					$password = mysql_real_escape_string($_POST['password']);
    					$email = mysql_real_escape_string($_POST['email']);
    					$avatar = mysql_real_escape_string($_POST['avatar']);
    					$age = mysql_real_escape_string($_POST['age']);
    					//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
    					$dn = mysql_fetch_array(mysql_query('select count(*) as nb from users where username="'.$username.'"'));
    					//On verifie si le pseudo a ete modifie pour un autre et que celui-ci n'est pas deja utilise
    					if($dn['nb']==0 or $_POST['username']==$_SESSION['username'])
    					{
    						//On modifie les informations de lutilisateur avec les nouvelles
    						if(mysql_query('update users set username="'.$username.'", password="'.$password.'", email="'.$email.'", avatar="'.$avatar.'", age="'.$age.'", where id="'.mysql_real_escape_string($_SESSION['userid']).'"'))
    						{
    							//Si ca a fonctionne, on naffiche pas le formulaire
    							$form = false;
    							//On supprime les sessions username et userid au cas ou il aurait modifie son pseudo
    							unset($_SESSION['username'], $_SESSION['userid']);
    ?>
    <div class="message">Vos informations ont bien &eacute;t&eacute; modifif&eacute;e. Vous devez vous reconnecter.<br />
    <a href="connexion.php">Se connecter</a></div>
    <?php
    						}
    						else
    						{
    							//Sinon on dit quil y a eu une erreur
    							$form = true;
    							$message = 'Une erreur est survenue lors des modifications.';
    						}
    					}
    					else
    					{
    						//Sinon, on dit que le pseudo voulu est deja pris
    						$form = true;
    						$message = 'Un autre utilisateur utilise d&eacute;j&agrave; le nom d\'utilisateur que vous d&eacute;sirez utiliser.';
    					}
    				}
    				else
    				{
    					//Sinon, on dit que lemail nest pas valide
    					$form = true;
    					$message = 'L\'email que vous avez entr&eacute; n\'est pas valide.';
    				}
    			}
    			else
    			{
    				//Sinon, on dit que le mot de passe nest pas assez long
    				$form = true;
    				$message = 'Le mot de passe que vous avez entr&eacute; contien moins de 6 caract&egrave;res.';
    			}
    		}
    		else
    		{
    			//Sinon, on dit que les mots de passes ne sont pas identiques
    			$form = true;
    			$message = 'Les mot de passe que vous avez entr&eacute; ne sont pas identiques.';
    		}
    	}
    	else
    	{
    		$form = true;
    	}
    	if($form)
    	{
    		//On affiche un message sil y a lieu
    		if(isset($message))
    		{
    			echo '<strong>'.$message.'</strong>';
    		}
    		//Si le formulaire a deja ete envoye on recupere les donnes que lutilisateur avait deja insere
    		if(isset($_POST['username'],$_POST['password'],$_POST['email'],$_POST['age']))
    		{
    			$username = htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');
    			if($_POST['password']==$_POST['passverif'])
    			{
    				$password = htmlentities($_POST['password'], ENT_QUOTES, 'UTF-8');
    			}
    			else
    			{
    				$password = '';
    			}
    			$email = htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');
    			$avatar = htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');
    			$age = htmlentities($_POST['age'], ENT_QUOTES, 'UTF-8');
    		}
    		else
    		{
    			//Sinon, on affiche les donnes a partir de la base de donnee
    			$dnn = mysql_fetch_array(mysql_query('select username,password,email,age,avatar from users where username="'.$_SESSION['username'].'"'));
    			$username = htmlentities($dnn['username'], ENT_QUOTES, 'UTF-8');
    			$password = htmlentities($dnn['password'], ENT_QUOTES, 'UTF-8');
    			$email = htmlentities($dnn['email'], ENT_QUOTES, 'UTF-8');
    			$avatar = htmlentities($dnn['avatar'], ENT_QUOTES, 'UTF-8');
    			$age = htmlentities($dnn['age'], ENT_QUOTES, 'UTF-8');
    		}
    		//On affiche le formulaire
    ?>
    <div class="content">
        <form action="edit_infos.php" method="post">
            Vous pouvez modifier vos informations:<br />
            <div class="center">
                <label for="username">Nom d'utilisateur</label><input type="text" name="username" id="username" value="<?php echo $username; ?>" /><br />
                <label for="password">Mot de passe<span class="small">(6 caract&egrave;res min.)</span></label><input type="password" name="password" id="password" value="<?php echo $password; ?>" /><br />
                <label for="passverif">Mot de passe<span class="small">(v&eacute;rification)</span></label><input type="password" name="passverif" id="passverif" value="<?php echo $password; ?>" /><br />
                <label for="age">Age</label><input type="text" name="age" value="<?php echo $age; ?>" /><br />
    			<label for="email">Email</label><input type="text" name="email" id="email" value="<?php echo $email; ?>" /><br />
                <label for="avatar">Image perso<span class="small">(facultatif)</span></label><input type="text" name="avatar" id="avatar" value="<?php echo $avatar; ?>" /><br />
                <input type="submit" value="Envoyer" />
            </div>
        </form>
    </div>
    <?php
    	}
    }
    else
    {
    ?>
    <div class="message">Pour acc&eacute;der &agrave; cette page, vous devez &ecirc;tre connect&eacute;.<br />
    <a href="connexion.php">Se connecter</a></div>
    <?php
    }
    ?>
    		<div class="foot"><a href="<?php echo $url_home; ?>">Retour &agrave; l'accueil</a> - LoCaSkiN</a></div>
    	</body>
    </html>



    1er Problème Résolue le code a été rééditer :Bonjour a tous voila je suis en creation d'un espace membres pour mon site web je commence tout juste le php avec Basse de donner .
    Pour cela je vais afficher mon code si quelqu'un a une solution le probleme est que lors que je valide l'inscription il me disent qu'il ya une erreur lors de l'inscription .
    Donc aucune donner arrive a la base de donner.
    Le code est :

    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
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    <?php
    include('config.php')
    ?>
     
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <link href="default/style.css" rel="stylesheet" title="Style" />
            <title>Espace membre</title>
        </head>
        <body>
        	<div class="site">
            <div class="moteur_recherche">
                <form action="http://www.google.fr/search">
                    <div>
                        <input type="hidden" name="hl" value="fr" />
                        <input type="text" name="q" size="34" />
                        <input type="submit" value="OK" />
                    </div>
                </form>
    		</div>
            <div class="header">
    	        LoCaSkiN
            </div>
    		</div>
    <?php
    //On verifie que le formulaire a ete envoye
    if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar'], $_POST['age']) and $_POST['username']!='')
    {
    	//On enleve lechappement si get_magic_quotes_gpc est active
    	if(get_magic_quotes_gpc())
    	{
    		$_POST['username'] = stripslashes($_POST['username']);
    		$_POST['password'] = stripslashes($_POST['password']);
    		$_POST['passverif'] = stripslashes($_POST['passverif']);
    		$_POST['email'] = stripslashes($_POST['email']);
    		$_POST['avatar'] = stripslashes($_POST['avatar']);
    		$_POST['age'] = stripslashes($_POST['age']);
    	}
    	//On verifie si le mot de passe et celui de la verification sont identiques
    	if($_POST['password']==$_POST['passverif'])
    	{
    		//On verifie si le mot de passe a 6 caracteres ou plus
    		if(strlen($_POST['password'])>=6)
    		{
    			//On verifie si lemail est valide
    			if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
    			{
    				//On echape les variables pour pouvoir les mettre dans une requette SQL
    				$username = mysql_real_escape_string($_POST['username']);
    				$password = mysql_real_escape_string($_POST['password']);
    				$email = mysql_real_escape_string($_POST['email']);
    				$avatar = mysql_real_escape_string($_POST['avatar']);
    				$age = mysql_real_escape_string($_POST['age']);
    				//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
    				$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
    				if($dn==0)
    				{
    					//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
    					$dn2 = mysql_num_rows(mysql_query('select id from users'));
    					$id = $dn2+1;
    					//On enregistre les informations dans la base de donnee
    					if(mysql_query('insert into users(id, username, password, email, avatar, signup_date, age) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.$age.'", "'.time().'")'))
    					{
    						//Si ca a fonctionne, on naffiche pas le formulaire
    						$form = false;
    ?>
    <div class="message">Vous avez bien &eacute;t&eacute; inscrit. Vous pouvez dor&eacute;navant vous connecter.<br />
    <a href="connexion.php">Se connecter</a></div>
    <?php
    					}
    					else
    					{
    						//Sinon on dit quil y a eu une erreur
    						$form = true;
    						$message = 'Une erreur est survenue lors de l\'inscription.';
    					}
     
    				}
    				else
    				{
    					//Sinon, on dit que le pseudo voulu est deja pris
    					$form = true;
    					$message = 'Un autre utilisateur utilise d&eacute;j&agrave; le nom d\'utilisateur que vous d&eacute;sirez utiliser.';
    				}
    			}
    			else
    			{
    				//Sinon, on dit que lemail nest pas valide
    				$form = true;
    				$message = 'L\'email que vous avez entr&eacute; n\'est pas valide.';
    			}
    		}
    		else
    		{
    			//Sinon, on dit que le mot de passe nest pas assez long
    			$form = true;
    			$message = 'Le mot de passe que vous avez entr&eacute; contien moins de 6 caract&egrave;res.';
    		}
    	}
    	else
    	{
    		//Sinon, on dit que les mots de passes ne sont pas identiques
    		$form = true;
    		$message = 'Les mots de passe que vous avez entr&eacute; ne sont pas identiques.';
    	}
    }
    else
    {
    	$form = true;
    }
    if($form)
    {
    	//On affiche un message sil y a lieu
    	if(isset($message))
    	{
    		echo '<div class="message">'.$message.'</div>';
    	}
    	//On affiche le formulaire
    ?>
    <div class="content">
        <form action="sign_up.php" method="post">
            Veuillez remplir ce formulaire pour vous inscrire:<br />
            <div class="center">
                <label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
                <label for="password">Mot de passe<span class="small">(6 caract&egrave;res min.)</span></label><input type="password" name="password" /><br />
                <label for="passverif">Mot de passe<span class="small">(v&eacute;rification)</span></label><input type="password" name="passverif" /><br />
                <label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
                <label for="age">Age</label><input type="text" name="age" value="<?php if(isset($_POST['age'])){echo htmlentities($_POST['age'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
    			<label for="avatar">Image perso<span class="small">(facultatif)</span></label><input type="text" name="avatar" value="<?php if(isset($_POST['avatar'])){echo htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
                <input type="submit" value="Envoyer" />
    		</div>
        </form>
    </div>
    <?php
    }
    ?>
    		<div class="foot">LocaSkin</a></div>
    	</body>
    </html>
    Resolue

  2. #2
    sebest777
    Invité(e)
    Par défaut
    L'id est en général en auto incrémentation dans la base, et il est inutile de le mettre lors d'un insert.
    Ton age et ta date sont inversés dans l'ordre d'entrée.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Points : 1 022
    Points
    1 022
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $time= time();
    $query = "insert into users values ('$id', '$username','$password','$email','$avatar','$age', '$time' )";
    mysql_query($query) or mysql_error();
    ?>
    de plus pour te mettre à jour tu devrais le faire avec PDO , beaucoup mieux.
    Conception / Dev

Discussions similaires

  1. recompiler php avec Mysql
    Par clancy182 dans le forum Apache
    Réponses: 2
    Dernier message: 16/10/2006, 12h38
  2. Configuration PHP avec MySQL - FC5 ?
    Par Poseidon62 dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 28/06/2006, 12h04
  3. [SGBD] Problème requete PHP avec MySQL
    Par TomZ dans le forum Requêtes
    Réponses: 5
    Dernier message: 12/06/2006, 02h40
  4. Besoin de conseil php et mysql
    Par virus2000fr dans le forum Administration
    Réponses: 6
    Dernier message: 24/02/2006, 11h39
  5. besoin d'aide fonction avec fichier (debutant)
    Par boby61 dans le forum Débuter
    Réponses: 9
    Dernier message: 14/03/2005, 12h22

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