Requette mySQL UPDATE et DELETE
boss0211
Messages postés
264
Statut
Membre
-
pour_quoi_pas Messages postés 40 Statut Membre -
pour_quoi_pas Messages postés 40 Statut Membre -
Bonjour,
aucun de ces deux fichier ne fonctionne je ne sais pas pourquoi.
Le premier est pour faire une mise à jour du profile et le 2eme est pour suprimer le profile.
(jai retirer les identifiant exprès)
membres.php :
suprimer.php :
Voila merci d'avance
aucun de ces deux fichier ne fonctionne je ne sais pas pourquoi.
Le premier est pour faire une mise à jour du profile et le 2eme est pour suprimer le profile.
(jai retirer les identifiant exprès)
membres.php :
<?php
//Ne pas oublier de mettre le session_start()
session_start();
//On vérifie que le membre est connecté.
if (isset($_SESSION['logged']) && $_SESSION['logged'] === false)
{
echo 'Erreur : vous devez être connecté pour accéder à cette page !<br /> Allez <a href="index.php">ici</a> pour vous connecter.';
}
else
{ echo 'Bonjour '.$_SESSION['pseudo'].'<br/><a href="http://boss021190.free.fr/membres/deconnexion.php">Déconnexion</a>';
//Recuperation des donné membre
mysql_connect("localhost", "", ""); // Connexion à MySQL
mysql_select_db(""); // Sélection de la base
$reponse = mysql_query("SELECT pseudo, nom, prenom, age, pays, email, site, interet FROM membres WHERE pseudo='" . $_SESSION['pseudo'] . "'");
$donnees = mysql_fetch_array($reponse);
?>
<div style="text-align:center;"><h2>Votre compte</h2></div>
<br />
<br />
<form method="post" action="membres.php" >
<label><b>Votre pseudo:</b> <input type="text" name="pseudo" value="<?php echo $donnees['pseudo']; ?>" /></label><br />
<label><b>Votre nom :</b> <input type="text" name="nom" value="<?php echo $donnees['nom']; ?>" /></label><br />
<label><b>Votre prénom:</b> <input type="text" name="prenom" value="<?php echo ($donnees['prenom']); ?>" /></label><br />
<label><b>Votre âge:</b> <input type="text" name="age" value="<?php echo $donnees['age']; ?>" /></label><br />
<label><b>Votre pays:</b> <input type="text" name="pays" value="<?php echo $donnees['pays']; ?>" /></label><br />
<label><b>Changer de mot de passe:</b> <input type="text" name="mot_passe" /></label><br />
<label><b>Votre adresse e-mail:</b> <input size="25" type="text" name="email" value="<?php echo $donnees['email']; ?>" /></label><br />
<label><b>Votre site web :</b> <input type="text" name="site" value="<?php echo $donnees['site']; ?>" /></label><br />
<label><b>Vos centres d'intérêt:</b><br /> <textarea cols="20" rows="5" name="interet"><?php echo $donnees['interet']; ?></textarea></label><br />
<label><input type="submit" value="Envoyer!" /></label><br />
</form>
<?php
if (isset($_POST['membres']))
{
//Si les variables contenant le pseudo, le mot de passe et l'email existent et contiennent quelque chose.
if (isset ($_POST['pseudo'], $_POST['mot_passe'], $_POST['email'], $_POST['pays'], $_POST['age'], $_POST['nom'], $_POST['prenom'], $_POST['interet']))
{
//Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères.
if (strlen(trim($_POST['pseudo'])) > 3 && strlen(trim($_POST['pseudo'])) < 35)
{
//Si le mot de passe est supérieur à 4 caractères.
if (strlen(trim($_POST['mot_passe'])) > 4)
{
//Mesure de sécurité.
$pseudo = htmlspecialchars($_POST['pseudo']);
$mot_passe = htmlspecialchars($_POST['mot_passe']);
$email = htmlspecialchars($_POST['email']);
$nom = htmlspecialchars($_POST['nom']);
$prenom = htmlspecialchars($_POST['prenom']);
$age = htmlspecialchars($_POST['age']);
$pays = htmlspecialchars($_POST['pays']);
$mot_passe = htmlspecialchars($_POST['mot_passe']);
$site = htmlspecialchars($_POST['site']);
$interet = htmlspecialchars($_POST['interet']);
//On vérifie que le pseudo n'existe pas.
$sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
if (mysql_result($sql, 1, 'nb_pseudo') == 1)
{
//Hashage du mot de passe avec md5().
$mot_passe = md5($mot_passe);
//On éxécute la requête qui enregistre un nouveau membre.
mysql_query("UPDATE membres (pseudo, nom, prenom, age, pays, mot_passe, email, site, interet) SET ('".$pseudo."','".$nom."','".$prenom."', '".$age."', '".$pays."', '".$mot_passe."', '".$email."', '".$site."', '".$interet."') WHERE pseudo='" . $_SESSION['pseudo'] . "'");
echo 'Message : votre compte a bien été mise à jour!';
}
else
echo 'Erreur : le pseudo existe déjà !';
}
else
echo 'Erreur : le mot de passe est trop court !';
}
else
echo 'Erreur : le pseudo est soit trop court, soit trop long !';
}
else
echo 'Erreur : vous avez oublié d\'entrer votre pseudo ou votre mot de passe ou votre adresse email !';
}}
mysql_close(); // Déconnexion de MySQL
?>
suprimer.php :
<?php
session_start();
//On vérifie que le membre est connecté.
if (isset($_SESSION['logged']) && $_SESSION['logged'] === false)
{
echo 'Erreur : vous devez être connecté pour accéder à cette page !<br /> Allez <a href="index.php">ici</a> pour vous connecter.';
}
else
{ echo 'Bonjour '.$_SESSION['pseudo'].'<br/><a href="http://boss021190.free.fr/membres/deconnexion.php">Déconnexion</a>';
//Recuperation des donné membre
mysql_connect("localhost", "loggin", "passe"); // Connexion à MySQL
mysql_select_db("baseeeeeeee"); // Sélection de la base
?>
<center><h2>Vous souhaitez réellement vous désinscrire?</h2></center><br /><br /><br />
Si oui cliquez sur le bouton ci-après:<br /> <br />
<form method="post" action="suprimer.php">
<input type="hidden" name="pseudo" value="<?php echo $_SESSION['pseudo']; ?>" />
<input type="submit" value="Se désinscrire!" />
</form>
</center>
<?php
mysql_query(" DELETE FROM membres VALUE $pseudo ");
mysql_close(); // Déconnexion de MySQL
}
?>
Voila merci d'avance
A voir également:
- Requette mySQL UPDATE et DELETE
- Hiberfil.sys delete - Guide
- Just delete me - Guide
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
5 réponses
maintenant que j'ai fais quelque modification, il me dis que mon problème est a la dernière ligne celle où l'on ferme la connexion mysql
donc la jne comprend pas bien!
pour voir la page qui dis lerreur: http://boss021190.free.fr/membres/membres.php
donc la jne comprend pas bien!
<?php
//Ne pas oublier de mettre le session_start()
session_start();
//On vérifie que le membre est connecté.
if (isset($_SESSION['logged']) && $_SESSION['logged'] == false)
{
echo 'Erreur : vous devez être connecté pour accéder à cette page !<br /> Allez <a href="index.php">ici</a> pour vous connecter.';
}
else
{ echo 'Bonjour '.$_SESSION['pseudo'].'<br/><a href="http://boss021190.free.fr/membres/deconnexion.php">Déconnexion</a>';
//Inclusion du fichier contenant les identifiants de connexion à la base de données.
require("config.inc.php");
//Connexion à la base de données.
mysql_connect($host, $username, $password);
mysql_select_db($bdd_name);
$reponse = mysql_query("SELECT pseudo, nom, prenom, age, pays, email, site, interet FROM membres WHERE pseudo='" . $_SESSION['pseudo'] . "'");
$donnees = mysql_fetch_array($reponse);
?>
<div style="text-align:center;"><h2>Votre compte</h2></div>
<br />
<br />
<form method="post" action="membres.php" >
<label><b>Votre pseudo:</b> <input type="text" name="pseudo" value="<?php echo $donnees['pseudo']; ?>" /></label><br />
<label><b>Votre nom :</b> <input type="text" name="nom" value="<?php echo $donnees['nom']; ?>" /></label><br />
<label><b>Votre prénom:</b> <input type="text" name="prenom" value="<?php echo ($donnees['prenom']); ?>" /></label><br />
<label><b>Votre âge:</b> <input type="text" name="age" value="<?php echo $donnees['age']; ?>" /></label><br />
<label><b>Votre pays:</b> <input type="text" name="pays" value="<?php echo $donnees['pays']; ?>" /></label><br />
<label><b>Changer de mot de passe:</b> <input type="text" name="mot_passe" /></label><br />
<label><b>Votre adresse e-mail:</b> <input size="25" type="text" name="email" value="<?php echo $donnees['email']; ?>" /></label><br />
<label><b>Votre site web :</b> <input type="text" name="site" value="<?php echo $donnees['site']; ?>" /></label><br />
<label><b>Vos centres d'intérêt:</b><br /> <textarea cols="20" rows="5" name="interet"><?php echo $donnees['interet']; ?></textarea></label><br />
<label><input type="submit" value="Envoyer!" /></label><br />
</form>
<?php
//Si les variables contenant le pseudo, le mot de passe et l'email existent et contiennent quelque chose.
if (isset ($_POST['pseudo'], $_POST['mot_passe'], $_POST['email'], $_POST['pays'], $_POST['age'], $_POST['nom'], $_POST['prenom'], $_POST['interet']))
{
//Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères.
if (strlen(trim($_POST['pseudo'])) > 3 && strlen(trim($_POST['pseudo'])) < 35)
{
//Si le mot de passe est supérieur à 4 caractères.
if (strlen(trim($_POST['mot_passe'])) > 4)
{
//Mesure de sécurité.
$pseudo = htmlspecialchars($_POST['pseudo']);
$mot_passe = htmlspecialchars($_POST['mot_passe']);
$email = htmlspecialchars($_POST['email']);
$nom = htmlspecialchars($_POST['nom']);
$prenom = htmlspecialchars($_POST['prenom']);
$age = htmlspecialchars($_POST['age']);
$pays = htmlspecialchars($_POST['pays']);
$mot_passe = htmlspecialchars($_POST['mot_passe']);
$site = htmlspecialchars($_POST['site']);
$interet = htmlspecialchars($_POST['interet']);
//On vérifie que le pseudo n'existe pas.
if( $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'"))
{
if (mysql_result($sql, 1, 'nb_pseudo') == 1)
{
//Hashage du mot de passe avec md5().
$mot_passe = md5($mot_passe);
//On éxécute la requête qui enregistre un nouveau membre.
mysql_query("UPDATE membres (pseudo, nom, prenom, age, pays, mot_passe, email, site, interet) SET ('".$pseudo."','".$nom."','".$prenom."', '".$age."', '".$pays."', '".$mot_passe."', '".$email."', '".$site."', '".$interet."') WHERE pseudo='" . $_SESSION['pseudo'] . "'");
echo 'Message : votre compte a bien été mise à jour!';
}
else
echo 'Erreur : le pseudo existe déjà !';
}
else
echo 'Erreur : le mot de passe est trop court !';
}
else
echo 'Erreur : le pseudo est soit trop court, soit trop long !';
}
else
echo 'Erreur : vous avez oublié d\'entrer votre pseudo ou votre mot de passe ou votre adresse email !';
}
}
mysql_close(); // Déconnexion de MySQL
?>
pour voir la page qui dis lerreur: http://boss021190.free.fr/membres/membres.php
essaie en formant tes "else" comme les "if"...
C'est à dire :
pour t'y retrouver (un peu) plus facilement, dans des codes pareils, essaie de mettre les conditions, les unes en dessous des autre:
ps: je faisais la même 'erreur' avant, ça ne change rien au code, mais
C'est à dire :
if
{
}
else
{
}
pour t'y retrouver (un peu) plus facilement, dans des codes pareils, essaie de mettre les conditions, les unes en dessous des autre:
if
{
if
{
}
else
{
}
}
else
{
}tu devrais pouvoir mieux t'y retrouver je pense et tiens moi au courant pour voir si ça fonctionne..
ps: je faisais la même 'erreur' avant, ça ne change rien au code, mais
<br>suffit. ;)
regarde, ce que toi tu as écrit, c'est ça:
d'après moi ton problème pourrait venir de là..
il faudrait fermer la BDD avant de fermer le else...
<?php
session_start();
if (isset($_SESSION['logged']) && $_SESSION['logged'] == false)
{
}
else
{
ouverture de ta BDD
}
mysql_close
?>
d'après moi ton problème pourrait venir de là..
il faudrait fermer la BDD avant de fermer le else...
heu si ça ne marche pas ce ne serait pas à cause de tes requêtes UPDATE et DELETE qui ne sont pas vraiment conformes.
un petit tour ici sqlmaj
un petit tour ici sqlmaj
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut
bon alors déjà dans tes premières lignes.... "=== false", tu dois enlever un "=".
ensuite, à moins que j'ai mal regardé, dis le moi, c'est quoi ta variable??
je n'ai pas vu de variable membres, donc à cet endroit là, je te conseille de mettre un nom à ton bouton submit et d'en faire une variable.
comme ça:
et à la place de la variable "membres"(que je n'ai pas ue), tu vérifies si la variable mise_a_jour existe et qu'elle contient Envoyer.
pour ta deuxième page je te conseillerai de plus préciser à ta BDD ce que tu veux supprimer.
DELETE FROM membres WHERE pseudo='"'.$pseudo.'"', par exemple
a+
bon alors déjà dans tes premières lignes.... "=== false", tu dois enlever un "=".
ensuite, à moins que j'ai mal regardé, dis le moi, c'est quoi ta variable??
if (isset($_POST['membres']))
{
je n'ai pas vu de variable membres, donc à cet endroit là, je te conseille de mettre un nom à ton bouton submit et d'en faire une variable.
comme ça:
<input type="submit" name="mise_a_jour" value="Envoyer">
et à la place de la variable "membres"(que je n'ai pas ue), tu vérifies si la variable mise_a_jour existe et qu'elle contient Envoyer.
pour ta deuxième page je te conseillerai de plus préciser à ta BDD ce que tu veux supprimer.
DELETE FROM membres WHERE pseudo='"'.$pseudo.'"', par exemple
a+