Upgrade ne fonctionne toujours pas
boss0211
Messages postés
264
Statut
Membre
-
Darshu Messages postés 303 Statut Membre -
Darshu Messages postés 303 Statut Membre -
bonjour,
j'ai remodifier plein de chose mais lorsque je veux UPGRADER un compte membre cela ne fonctionne pas! que faire???
voici le script j'ai chercher relu le cour mais je ne trouve toujours pas!
merci de bien vouloir m'aider
j'ai remodifier plein de chose mais lorsque je veux UPGRADER un compte membre cela ne fonctionne pas! que faire???
voici le script j'ai chercher relu le cour mais je ne trouve toujours pas!
merci de bien vouloir m'aider
<?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
{
//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 <?php echo $_SESSION['pseudo']; ?></h2></div>
<br />
<br />
<form method="post" action="modif.php" >
<label><b>Votre pseudo:</b> <input type="text" name="pseudo" /></label><br />
<label><b>Votre nom :</b> <input type="text" name="nom" /></label><br />
<label><b>Votre prénom:</b> <input type="text" name="prenom" /></label><br />
<label><b>Votre âge:</b> <input type="text" name="age" /></label><br />
<label><b>Votre pays:</b> <input type="text" name="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"/></label><br />
<label><b>Votre site web :</b> <input type="text" name="site" /></label><br />
<label><b>Vos centres d'intérêt:</b><br /> <textarea cols="20" rows="5" name="interet"></textarea></label><br />
<label><input type="submit" value="Envoyer!" /></label><br />
</form>
<?php
//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 !';
}
mysql_close(); // Déconnexion de MySQL
}//on referme la boucle qui est avant le script xHTML
?>
<center><a href="http://boss021190.free.fr/membres/membres.php">Retour</a>
<br />
<br />
<a href="http://boss021190.free.fr">© Annuaire boss021190</a></center>
A voir également:
- Upgrade ne fonctionne toujours pas
- Winget upgrade - Guide
- Upgrade windows 7 to windows 10 - Accueil - Mise à jour
- Windows 7 upgrade advisor - Télécharger - Informations & Diagnostic
- Upgrade carte graphique - Guide
- Asus r511l ram upgrade - Forum Carte-mère/mémoire
6 réponses
Salut.
C'est ton if (mysql_result($sql, 1, 'nb_pseudo') == 1) que je ne comprends pas, surtout qu'après dans ton else tu mets que le pseudo existe déja ... C'est compliqué tous tes tests, pour pas grand chose finalement ! En plus, ton count ne va pas compter le nombre de résultats (voir si il y a déja un enregistrement correspondant aux critères du WHERE), mais ajouter chaque colonne ...
Essaie plutôt ça pour tester tes enregistrements :
C'est ton if (mysql_result($sql, 1, 'nb_pseudo') == 1) que je ne comprends pas, surtout qu'après dans ton else tu mets que le pseudo existe déja ... C'est compliqué tous tes tests, pour pas grand chose finalement ! En plus, ton count ne va pas compter le nombre de résultats (voir si il y a déja un enregistrement correspondant aux critères du WHERE), mais ajouter chaque colonne ...
Essaie plutôt ça pour tester tes enregistrements :
$result = mysql_query($query) or die("Erreur = ".mysql_error());
if (mysql_num_rows($result)<1)
{
UPDATE des données
}
else
{
Message d'erreur
}
A la place de ton mysql_query avec COUNT justement ... Tu as déja fait ta requête avant, donc insère juste ce que je t'ai mis au bon endroit ...
la franchement je ne voie pas surtout qu'il y a des variable non existante au script enfin bon c'est peut etre moi qui déconne mais bon
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pourquoi mon UPGRADE ne fonctionne pas ??
et je voudrais savoir s'il existe des fonction pour:
1. vérifier si le pseudo existe déjà
2. Ne changer que les champs rempli dans un formulaire
MERCI DAVANCE!!
et je voudrais savoir s'il existe des fonction pour:
1. vérifier si le pseudo existe déjà
2. Ne changer que les champs rempli dans un formulaire
MERCI DAVANCE!!
<?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
{
//Identifiants de connexion à la base de données.
require("/mnt/116/sdc/d/0/boss021190/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 <?php echo $_SESSION['pseudo']; ?></h2></div>
<br />
<br />
<form method="post" action="modif.php" >
<label><b>Votre pseudo:</b> <input type="text" name="pseudo" /></label><br />
<label><b>Votre nom :</b> <input type="text" name="nom" /></label><br />
<label><b>Votre prénom:</b> <input type="text" name="prenom" /></label><br />
<label><b>Votre âge:</b> <input type="text" name="age" /></label><br />
<label><b>Votre pays:</b> <input type="text" name="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"/></label><br />
<label><b>Votre site web :</b> <input type="text" name="site" /></label><br />
<label><b>Vos centres d'intérêt:</b><br /> <textarea cols="20" rows="5" name="interet"></textarea></label><br />
<label><input type="submit" value="Envoyer!" /></label><br />
</form>
<?php
//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']);
//Hashage du mot de passe avec md5().
$mot_passe = md5($mot_passe);
//On éxécute la requête qui enregistre un nouveau membre.
$up=mysql_query("UPDATE membres SET pseudo='" . $pseudo . "', nom='" . $nom . "', prenom='".$prenom."', age='".$age."', pays='".$pays."', mot_passe='".$mot_passe."', email='".$email."', site='".$site."', interet='".$interet."' WHERE pseudo='" . $_SESSION['pseudo'] . "'");
if($up == true)
{
echo '<center>Votre compte a bien été mise à jour! <br /><a href="http://boss021190.free.fr/membres/membres.php">Retour</a><center>';
}
else{
echo '<center>un problème est survenue lors de la mise à jour. Veuillez recommencer!</center>';
}
mysql_close(); // Déconnexion de MySQL
}//on referme la boucle qui est avant le script xHTML
?>
<br />
<br />
<a href="http://boss021190.free.fr">© Annuaire boss021190</a></center>
Arrête de remettre ton code à chaque fois, ça sert à rien on l'a déja ...
Pour le script qui teste si il y a déja un membre, je viens de te le filer ! Et enfin pour ne mettre que les champs déja renseigné par fomulaire, suffit de faire if (isset($_POST['var'])) et de concaténer ton UPDATE en fonction ...
Et tu ne vois pas où mettre le code que je t'ai filé ? Pourtant je t'ai même indiqué ce qu'il devrait y avoir comme reste du code dans les accolades, alors si tu sais pas ce que fais ta page ... Faut encore te pondre un code tout fait qui marche tout seul ?
Pour le script qui teste si il y a déja un membre, je viens de te le filer ! Et enfin pour ne mettre que les champs déja renseigné par fomulaire, suffit de faire if (isset($_POST['var'])) et de concaténer ton UPDATE en fonction ...
Et tu ne vois pas où mettre le code que je t'ai filé ? Pourtant je t'ai même indiqué ce qu'il devrait y avoir comme reste du code dans les accolades, alors si tu sais pas ce que fais ta page ... Faut encore te pondre un code tout fait qui marche tout seul ?