PDA

View Full Version : سوال: رفع خطا در سشن



HOSSEINGHOLI
سه شنبه 10 شهریور 1388, 16:08 عصر
من وقتی صفحه ایندکس را باز میکنم و رمز را اشتباه وارد میکنم به این خطا بر میخورم بای رفع اون چیکار کنم؟
Notice: A session had already been started - ignoring session_start() in C:\Apache\htdocs\logses\index.php on line 2

<?php
session_start();
$_SESSION['username']="";
$_SESSION['password']="";
unset($_SESSION['username']);
unset($_SESSION['password']);
session_destroy();
?>
<html>
<head>
<title>Login Screen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form action="config.php" method="post">
<table width="75%" border="1">
<tr>
<td>User Name</td>
<td><input name="username" type="text" size="20" maxlength="20">&nbsp;</td>
</tr>
<tr>
<td>Password</td>
<td><input name="password" type="password" size="20" maxlength="20"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input name="Logon" type="submit">&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>
و این هم محتویات فایل config.php است

<?php
$con = mysql_connect("localhost","root","1365");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("logses", $con);
session_start();

if(isset($_SESSION['username']) and isset($_SESSION['password'] ))
{
$nm = $_SESSION['username'];
$pass = $_SESSION['password'];
}
else
{
if(isset($_POST['username']) and isset($_POST['password'] ))
{
$_SESSION['username']=$_POST['username'];
$_SESSION['password']=$_POST['password'];
$nm = $_SESSION['username'];
$pass = $_SESSION['password'];
}
else
{
unset($_SESSION['username']);
unset($_SESSION['password']);
$nm ="";
$pass ="";
}
}

$stuff= mysql_query("SELECT page FROM user WHERE username='$nm' AND password='$pass'") or die("MySQL Login Error: ".mysql_error());
$stuff = mysql_affected_rows();


if ($stuff ==1)
{
?>
<HTML>
<body>
<?php echo $_SESSION['username']; ?> Login in
<p><a href="page1.php"> Link 1 </a></p>
<p><a href="page2.php"> Link 2 </a></p>
<p><a href="page3.php"> Link 3 </a></p>
<p><a href="index.php"> Logout! </a></p>
</body>
</HTML>
<?php
}
else
{
include 'page4.php';
}

?>

ولی وقتی رمز رو درست وارد میکنم درست کار میکنه

lilac8
شنبه 28 اردیبهشت 1392, 11:06 صبح
تونستین این نوتیک رو رفع کنید ؟

mahmod2000
شنبه 28 اردیبهشت 1392, 11:28 صبح
شما یه بار تو config سشن رو زدید

یه بار تو index

اگه فایل کانفیگ رو اینکلود میکنید در index.php نیازی نیست دوباره تو index سشن رو بزنید
و اینکه سعی کنید session_start رو اول کد بزارید که قبلش عملیاتی انجام نشده باشه

موفق باشید

fa.m2541367
شنبه 28 اردیبهشت 1392, 22:27 عصر
این error نیست notice برای رفع مشکل کافیه تو php.ini
error_reporting = E_ALL را به
error_reporting = E_ALL & ~E_NOTICE
تبدیل کنید

H:Shojaei
یک شنبه 29 اردیبهشت 1392, 00:41 صبح
سلام

$stuff = mysql_affected_rows();
چرا مقداري براي تابع مشخص نكردين؟؟(داخل پرانتز)
در ضمن اين رو هم ابتداي صفحاتتون بذاريد بد نيست:

<?php ob_start(); ?>
و اين رو هم انتهاش:

<?php ob_end_flush(); ?>