Aller au contenu

reset de mot de passe!


Sujets conseillés

Posté

Bonjour a tous.

Voila mon probleme:

j'ai un tableau dynamique

toto1 activitée adresse email modifier

.

.

.

quand un utlisateur clique sur le champ modifier il arrive sur une page d'identification je passe son id par url comme ca des que son nom et pass sont correstes je lui importe ses donées pour qu'il les modifie mais voila des que saisi le nom &pass j'arrive bien sur ses données mais dans la base les pass s'effacent!!! :gueule:

sauriez vous pourquoi?

Posté

Bonjour,

quand un utlisateur clique sur le champ modifier il arrive sur une page d'identification je passe son id par url comme ca des que son nom et pass sont correstes je lui importe ses donées pour qu'il les modifie mais voila des que saisi le nom &pass j'arrive bien sur ses données mais dans la base les pass s'effacent!!!  :gueule:

sauriez vous pourquoi?

<{POST_SNAPBACK}>

Certainement parce que tu vas trop vite en besogne, comme semble le démontrer cette phrase passablement lisible...

Essaye de prendre un peu plus de temps pour écrire, ici ou dans tes programmes ;)

Par ailleurs, tu peux aussi nous poster le code que tu utilise, c'est plus facile pour établir un diagnostic.

Posté

Desolé pour la qualité du post.

voici un bout du code, de la page ident_toto.php:

<?php
$var1_Recordset1 = "0";
if (isset($HTTP_POST_VARS['nom'])) {
 $var1_Recordset1 = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['nom'] : addslashes($HTTP_POST_VARS['nom']);
}
$var2_Recordset1 = "0";
if (isset($HTTP_POST_VARS['pass'])) {
 $var2_Recordset1 = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['pass'] : addslashes($HTTP_POST_VARS['pass']);
}
mysql_select_db($database_cpage, $cpage);
$query_Recordset1 = sprintf("SELECT * FROM groupes WHERE nom='%s' AND pass='%s'", $var1_Recordset1,$var2_Recordset1);
$Recordset1 = mysql_query($query_Recordset1, $cpage) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>

Posté

J'ai dû mal m y prendre qlque part, mais dès que je saisi un nom et un mot de passe, correspondant a un utilisateur qui souhaite modifier ses données.

j'arrive bien a la page "modif" tout ce passe bien sauf que dans ma base le mot de passe saisi disparait !!! si t'as une idée elle sera la bien venue.

Posté

Voila:

<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
 $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

 switch ($theType) {
   case "text":
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
     break;    
   case "long":
   case "int":
     $theValue = ($theValue != "") ? intval($theValue) : "NULL";
     break;
   case "double":
     $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
     break;
   case "date":
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
     break;
   case "defined":
     $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
     break;
 }
 return $theValue;
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
 $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form2")) {
 $updateSQL = sprintf("UPDATE groupes SET nom=%s, activite=%s, descriptif=%s, creation=%s, photo=%s, pass=%s WHERE idgroupe=%s",
                      GetSQLValueString($_POST['nom'], "text"),
                      GetSQLValueString($_POST['activite'], "text"),
                      GetSQLValueString($_POST['descriptif'], "text"),
                      GetSQLValueString($_POST['creation'], "date"),
                      GetSQLValueString($_POST['photo'], "text"),
                      GetSQLValueString($_POST['pass'], "text"),
                      GetSQLValueString($_POST['idgroupe'], "int"));

 mysql_select_db($database_cpage, $cpage);
 $Result1 = mysql_query($updateSQL, $cpage) or die(mysql_error());

 $updateGoTo = "groupes.php";
 if (isset($_SERVER['QUERY_STRING'])) {
   $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
   $updateGoTo .= $_SERVER['QUERY_STRING'];
 }
 header(sprintf("Location: %s", $updateGoTo));
}

$var1_rsmodifgroupe = "rock";
if (isset($HTTP_POST_VARS['nom'])) {
 $var1_rsmodifgroupe = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['nom'] : addslashes($HTTP_POST_VARS['nom']);
}
$var2_rsmodifgroupe = "azaz";
if (isset($HTTP_POST_VARS['pass'])) {
 $var2_rsmodifgroupe = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['pass'] : addslashes($HTTP_POST_VARS['pass']);
}
mysql_select_db($database_cpage, $cpage);
$query_rsmodifgroupe = sprintf("SELECT * FROM groupes WHERE nom='%s' AND pass='%s'", $var1_rsmodifgroupe,$var2_rsmodifgroupe);
$rsmodifgroupe = mysql_query($query_rsmodifgroupe, $cpage) or die(mysql_error());
$row_rsmodifgroupe = mysql_fetch_assoc($rsmodifgroupe);
$totalRows_rsmodifgroupe = mysql_num_rows($rsmodifgroupe);
?>

Posté

Tu dis que tu fais passer le mot de passe dans l'url c'est ca ?

C'est normal qu'il "disparaisse" de ta base de données... La requète est construite de sorte que la mise à jour de l'utilisateur soit effectuée à partir des données d'un formulaire ($HTTP_POST_VARS) et non pas avec les données issue de l'url ($HTTP_GET_VARS).

Juste une remarque : il est dangeureux de passer ce type d'information par l'url ! C'est ce qu'il y a de plus facile à récupérer pour les petits malins...

Posté

Tu as raison, mon idée de depart était de faire passer juste l'id de l'utilisateur par url d'une page à l'autre et dans chaque page faire un jeu d'enregistrement approprié .C'est bon ca tu crois!?

sinon j'ai trouvé mon erreur en fait comme tu dis via mon formulaire je fesais un update de ma base , et le champ passe prenais par erreur une valeur texte.

en tout cas merci pour ton aide.

Posté

Tu devrais passer ton id utilisateur par un cookie, comme ça tu n'as pas à te soucier de le faire passer de page en page par les urls.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...