PDA

View Full Version : سوال: مشکل در لوگین



rash44
دوشنبه 12 مرداد 1388, 22:02 عصر
سلام
من از easy php استفاده می کنم
زمانی که توی برنامه لاگین می کنم وقتی که کاربر یوزر و پسورد درست وارد میکنه مجددا فرم لاگین براشس نمایش داده میشه و کاربلر باید دوباره یوزر و پسورد وارد کنه و سپس لاگین بشه به برنامه
برنامه رو زمانی که آپلود می کنم روی اینترنت درسته و بار اول کاربر لاگین میشه
روی سیستم های زیادی هم چک کردم همین مشکل وجود داره

کد برنامه لاگین :


<?php
@ ob_start();
@ session_start();
if(isset($_POST['login'])) {
require_once('database.php');
$user=strtolower($_POST['user']);
$user=htmlspecialchars($user);
$user=str_replace("'", "", $user);
$user=trim($user);
$pas=strtolower($_POST['pass']);
$pas=trim($pas);
$pas=md5($_POST['pass']);
$link = db_connect();
$sql = "SELECT `user`,`pass` FROM `user` WHERE `user`='$user' limit 1";
$result = db_query($sql);
$line = db_fetch_assoc($result);
if ($line['pass'] == $pas) {
$_SESSION['user'] = $user;
$ClientString = $_SERVER['HTTP_USER_AGENT'];
$ip=$_SERVER['REMOTE_ADDR'];
$_SESSION['ClientStr'] = md5($ClientString);
echo "<meta http-equiv='refresh' content='0; URL=user.php'>";
}
else {
echo "<script>alert('اطلاعات وارد شده مورد تائید نمی باشد')</script>";
echo "<meta http-equiv='refresh' content='0; URL=index.php'>";
} } else {
echo "<meta http-equiv='refresh' content='0; URL=index.php'>"; }
db_close($link);
?>

mrrajabi
سه شنبه 13 مرداد 1388, 08:39 صبح
من هم همین مشکل رو دارم. یعنی باید دوبار لاگین کرد. به نظر من که مشکل باید از بخش سشن های سرور باشه, چون روی لوکال این مشکل اصلاً وجود نداشته تو این یک سال(شاید دو بار نهایتش)

mostafa_shaeri_tj
سه شنبه 13 مرداد 1388, 09:59 صبح
سرور لینوکسی هست ؟ چون تا اونجایی که اطلاع دارم فقط سرور های لینوکسی این مشکل رو دارن ؟

mostafa_shaeri_tj
سه شنبه 13 مرداد 1388, 10:06 صبح
در مورد سوال آقای راش هم فکر میکنم اگر از کد refresh صفحه استفاده نکنن و به جای اون از redirect استفاده کنن مشکلشون حل میشه .

redirect کردن تو php با استفاده از هدر رو اطلاع داری ؟