PDA

View Full Version : فرم لاگین مدیر



HOSSEINONLINE7
یک شنبه 05 شهریور 1391, 09:53 صبح
سلام من فرم لاگین طراحی کردم ولی برای چک کردن با دیتابیس مشکل دارم نمیدونم مشکلم کجاست لطفا کدهای من را ببینید و بفرمایید مشکلم چیه ...


<html>
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<form action="" method="post">
<label for="user">نام کاربري</label>
<input type="text" name="user" />
<br />
<label for="pass">کلمه ي عبور</label>
<input type="password" name="pass"/>
<br />
<input type="submit" value="ورود" />
<input type="checkbox" name="remember" />
<label for="remember">مرا به خاطر بسپار</label>
<a id="lostpassword" href="http://localhost/lostpassword.php" target="_blank">نام کاربري يا رمز عبورتان را فراموش کرده ايد ؟</a>
</form>
</body>
</html>

<?php
session_start();
include("config.php");




$user=strtolower($_POST['user']);
$pass=strtolower($_POST['pass']);

$check=mysql_query("select pass from admin where user='$user'");
if(mysql_num_rows($check))
{

if($pass==mysql_result($check,0,4)){

$_SESSION['admin_user']=$user;
header("location:home.php");

}
else{
echo("نام کاربري و يا رمز عبور شما صحيح نمي باشد");
}
}




?>

php_java
یک شنبه 05 شهریور 1391, 10:44 صبح
شاید از کانفیگ باشه؟

naser_haji
یک شنبه 05 شهریور 1391, 10:47 صبح
session_start();
این رو ببر قبل کدهای html

mahmod2000
یک شنبه 05 شهریور 1391, 10:47 صبح
میتونید این خط را به این صورت بنویسید ..

$check=mysql_query("select * from admin where user='$user' and pass = '$pass'");



و اینکه برای session باید Session_register هم اضافه کنید بعد در جاهای دیگه برای برگزاری جلسات از $_SESSION['admin_user'] استفاده کنید.به این صورت عمل کنید:


<?php
$check=mysql_query("select * from admin where user='$user' and pass='$pass'");
$row = mysql_fetch_row($check);
if(isset($row[0])) //Id admin
{
session_start();
$session_admin = $row[0];
session_register(session_admin);

header("location:home.php");
exit();
}

?>

AMIBCT
یک شنبه 05 شهریور 1391, 10:49 صبح
در دستور mysql_result شما ستون چهارم را خوانده‌اید در حالی که فقط یک ستون دارید
عدد چهار را با عدد 0 جایگزین کنید یا کلا آن را حذف کنید( مقدار پیش‌فرض 0 است )

HOSSEINONLINE7
یک شنبه 05 شهریور 1391, 10:53 صبح
در دستور mysql_result شما ستون چهارم را خوانده‌اید در حالی که فقط یک ستون دارید
عدد چهار را با عدد 0 جایگزین کنید یا کلا آن را حذف کنید( مقدار پیش‌فرض 0 است )

ممنون از همگی من ستون های دیگه هم دارم که ستون 4 پسورد را ذخیره کردم .




میتونید این خط را به این صورت بنویسید ..

$check=mysql_query("select * from admin where user='$user' and pass = '$pass'");



و اینکه برای session باید Session_register هم اضافه کنید بعد در جاهای دیگه برای برگزاری جلسات از $_SESSION['admin_user'] استفاده کنید.به این صورت عمل کنید:


<?php
$check=mysql_query("select * from admin where user='$user' and pass='$pass'");
$row = mysql_fetch_row($check);
if(isset($row[0])) //Id admin
{
session_start();
$session_admin = $row[0];
session_register(session_admin);

header("location:home.php");
exit();
}

?>



چرا باید Session_register استفاده کنم و همچنین دستور session_generation چه کاری انجام میده ؟

mahmod2000
یک شنبه 05 شهریور 1391, 14:57 عصر
Session_register یه سشن رو برای شما ایجاد میکنه و میتونید در صفحات دیگر سایت از طریق $_SESSION[] سشن را فرا بخونید

AMIBCT
دوشنبه 06 شهریور 1391, 13:30 عصر
دوست عزیز اگر کد شما همان است که بالا نوشته‌اید راه حلش آن چیزی است که برایتان نوشتم
اگر خودتان می‌دانید مشکل و راه حل چیست دیگر چرا می‌پرسید و وقت دیگران را می‌گیرید؟

HOSSEINONLINE7
دوشنبه 06 شهریور 1391, 15:17 عصر
دوست عزیز اگر کد شما همان است که بالا نوشته‌اید راه حلش آن چیزی است که برایتان نوشتم
اگر خودتان می‌دانید مشکل و راه حل چیست دیگر چرا می‌پرسید و وقت دیگران را می‌گیرید؟

عزیز من اگر مشکل نداشتم که اینجا نمی آمدم ببخشید که وقتتون را گرفتم ...

AMIBCT
سه شنبه 07 شهریور 1391, 08:41 صبح
کسی با سوال پرسیدن مشکل ندارد

مشکلی وقتی است که پاسخ شما داده می‌شود و بدون آزمایش می‌گویید این درست نیست