PDA

View Full Version : دستور شرطی برای آپدیت نکردن تیبل پسورد



mosavi7
پنج شنبه 03 اسفند 1391, 20:00 عصر
با سلام و عرض ادب
یه فرمی برای آپدیت اطلاعات کاربر درست کردم , اما تو یه قسمتی به مشکل خورد , ممنون میشم بنده رو راهنمایی بفرمایید .
چند تا فیل دارم , نام - ایمیل - موبایل - پسورد و غیره ...
تمامی اینا رو فراخوانی کردم به جز پسورد , میخوام یه دستور شرطی بنویسم که اگر کاربر فیلدهای پسورد رو پر نکرد , اطلاعات فیلد پسورد تغییری پیدا نکنه , و همون پسورد قبلیش باقی بمونه ...
این هم فانکشن برای آپدیت پروفایل کاربر :




function updateUser($fname,$lname,$email,$mobile,$password, $admin,$id){
$Md5Password = md5($password);
$date = time();

return mysql_query("UPDATE `signup` SET `fname` = '$fname',
`lname` = '$lname',
`email` = '$email',
`mobile` = '$mobile',
`password` = '$Md5Password',
`date` = '$date',
`admin` = '$admin' WHERE `signup`.`id` =$id;
");
}

Tarragon
پنج شنبه 03 اسفند 1391, 20:20 عصر
<?
function updateUser($fname,$lname,$email,$mobile,$password, $admin,$id){
$Md5Password = (!empty($password) ? md5($password) : NULL);
return mysql_query("UPDATE `signup` SET `fname` = '$fname',
`lname` = '$lname',
`email` = '$email',
`mobile` = '$mobile',".
(empty($Md5Password) ? "" : "`password` = '$Md5Password',").
"`date` = NOW(),
`admin` = '$admin' WHERE `signup`.`id` =$id;
");
}

MRmoon
جمعه 04 اسفند 1391, 08:23 صبح
یه تغییر توی کد امین میدم اینجوری بهتریه!
الان تو کد بالا میگه اگه خالی بود تیبل هیچی رو مساوی اون قرار بده ولی اینطوری باشه بهتره:
که اگه خالی بود دوباره مقدار فیلد password رو دوباره برا خودش مقدار دهی کنه:


<?php
function updateUser($fname,$lname,$email,$mobile,$password, $admin,$id){
$Md5Password = md5($password);
$date = time();

return mysql_query("UPDATE `signup` SET `fname` = '$fname',
`lname` = '$lname',
`email` = '$email',
`mobile` = '$mobile',
`password` = ".(empty($Md5Password)? password : $Md5Password ).",
`date` = '$date',
`admin` = '$admin' WHERE `signup`.`id` =$id;
");
}

?>

mosavi7
یک شنبه 13 اسفند 1391, 18:07 عصر
دست گلتون درد نکنه واقعا ممنون ...

MMSHFE
یک شنبه 13 اسفند 1391, 18:33 عصر
البته کد دوم یک اشکال کوچک داره و اون اینکه باید در قسمت true ساختار سه گانه، `password` نوشته بشه نه 'password' یعنی باید بگین فیلد پسورد رو توی فیلد پسورد ذخیره کنه نه اینکه رشته password رو توی فیلد پسورد بگذاره.

MRmoon
یک شنبه 13 اسفند 1391, 19:25 عصر
ببخشید یک اشتباه بود که حواسم نبود.

متشکر که یاد آوری کردید!

mosavi7
یک شنبه 13 اسفند 1391, 19:46 عصر
ببخشید یک اشتباه بود که حواسم نبود.

متشکر که یاد آوری کردید!
این کدی رو که اپدیت کردید باز هم مشکل داره :(




function updateUser($fname,$lname,$email,$mobile,$password, $admin,$id){$Md5Password = md5($password);$date = time(); return mysql_query("UPDATE `signup` SET `fname` = '$fname',`lname` = '$lname',`email` = '$email',`mobile` = '$mobile',`password` = ".(empty($Md5Password)? `password` : $Md5Password ).",`date` = '$date',`admin` = '$admin' WHERE `signup`.`id` =$id;");}