View Full Version : سوال: return این function درسته یا نه؟
mosi2007
جمعه 19 اسفند 1390, 23:59 عصر
سلام دوستان
این فانکشنی است که برای لاگین است که میخوام در صورتی که این کاربر وجود داشته باشه ایدیش رو بگیریم و سشن رو فعال کنم ولی نمیشه
function login_check($email, $password){
$email=mysql_real_escape_string($email);
$queryl=mysql_query("SELECT user_id FROM `users` WHERE `email`='$email' AND `password`='".md5($password)."'")or die("can not select");
if (mysql_result($queryl, 0) == 1){
return user_id ;}else
return false;
}
این هم خواندن فانکشن
$login=login_check($login_email, $login_password);
نمیدونم چطوری مقدار user_id رو که میخونه و از نوع int است رو از داخل فانکشن بفرستمش و $login این مقدارو بگیره و بعد سشن شروع بشه
$_SESSION['user_id']=$login
Hell Lord
شنبه 20 اسفند 1390, 00:47 صبح
user_id
یا
$user_id
؟؟
mosi2007
شنبه 20 اسفند 1390, 01:00 صبح
user_id
یا
$user_id
؟؟
$user_id اصلا نداریم
user_id منظورمه
Reza1607
شنبه 20 اسفند 1390, 01:00 صبح
به جاي اين خط
return user_id
اين خط رو قرار بدين
return mysql_result($queryl, 0);
Hell Lord
شنبه 20 اسفند 1390, 01:03 صبح
من کد رو اشتباه دیدم فکر کردم یک مقدار رو ریختی تو $user_id و موقع return علامتش رو نگذاشتی شاید؛ که دوستمون بالا کار رو درست کردند :)
mosi2007
شنبه 20 اسفند 1390, 01:04 صبح
ببین
کد اصلیش اینه که اینم کار نمیکنه میخوای رو این کار کن شاید بهتر بتونی به جواب برسی ممنون
function login_check($email, $password){
$email=mysql_real_escape_string($email);
$queryl=mysql_query("SELECT COUNT(`user_id`) as `count`, `user_id`
FROM `users` WHERE `email`='$email' AND `password`='".md5($password)."'")or die("can not select");
return (mysql_result($queryl, 0) == 1) ? mysql_result($queryl, 0, 'user_id') : false;
}
این خواندن فانکشن
$login=login_check($login_email, $login_password);
و اگر اینا درست جواب بده باید سشن شروع بشه
$_SESSION['user_id']=$login;
رضا قربانی
یک شنبه 21 اسفند 1390, 12:52 عصر
سیشن رو استارت کردی ؟
mosi2007
یک شنبه 21 اسفند 1390, 18:27 عصر
سیشن رو استارت کردی ؟
اره بابا دمت گرم دیگه
colors
دوشنبه 22 اسفند 1390, 00:25 صبح
درود
اینو یه تست کن
<?php
function login_check($email, $password){
$email=mysql_real_escape_string($email);
$password = md5($password);
$queryl=mysql_query("SELECT * FROM `users` WHERE `email`='$email' AND `password`='$password'");
$user = mysql_num_rows($queryl);
if ($user == 1){
return true ;
}
else{
return false;
}
}
?>
mosi2007
دوشنبه 22 اسفند 1390, 00:41 صبح
درود
اینو یه تست کن
<?php
function login_check($email, $password){
$email=mysql_real_escape_string($email);
$password = md5($password);
$queryl=mysql_query("SELECT * FROM `users` WHERE `email`='$email' AND `password`='$password'");
$user = mysql_num_rows($queryl);
if ($user == 1){
return true ;
}
else{
return false;
}
}
?>
نه نمیخام که boolean return بشه میخوام که ایدی ریترن بشه که اینجا
عرض کردم که
$_SESSION['user_id']=$login;
سشن با ایدی کار کنه
Reza1607
دوشنبه 22 اسفند 1390, 01:13 صبح
الان كوئري آي دي رو درست بر مي گردونه يا اصلا برنمي گردونه؟
mosi2007
دوشنبه 22 اسفند 1390, 02:09 صبح
اصلا بر نمیگردونه
بی خیال هم سر شما رو درد اودرم هم وقتتون رو گرفتم
از تابع استفاده نمیکنم با کدهای معمولی درست شد
دستتون درد نکنه
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.