הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 20-07-08, 18:38   # 1
kfir91
חסום
 
מיני פרופיל
תאריך הצטרפות: Apr 2007
הודעות: 220

kfir91 לא מחובר  

שגיאה עם קוקיס ו headers

זה השגיאה :
קוד:
Warning: Cannot modify header information - headers already sent by (output started
זה הקוד :
קוד:
<html dir="rtl">
<head>
	<title>דף ראשי</title>
	<? include "config.php"; ?>
</head>
<body>

<?
$hour = time() + 3600;
$username = $_COOKIE['user'];
$password = $_COOKIE['pass'];

if(!isset($_COOKIE['user']))
    {
    echo "אתה אינך מחובר :: <a href=\"?act=loginform\">התחברות</a><br />";
    }
else
    echo "ברוך הבא $username :: <a href=\"?act=logout\">התנתק</a><br />";

$act = $_GET['act']; // הגדרת משתנה ראשי

if ($act == "logincheck") // בדיקת התחברות
{
// הכנסת פרטי הטופס למשתנים
$user = $_POST['User'];
$pass = $_POST['Pass'];

// בדיקת טופס

echo "
	<table class=\"loginchecktable\">
	<tr><td valign=\"top\" dir=\"rtl\" class=\"login_check_td_table\">";

	if ($pass == "")
	{
	   echo "סיסמא לא הוזנה";
	   echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=?act=loginform\">";
	}
	else if ($user == "")
	{
	   echo "שם משתמש לא הוזן";
	   echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=?act=loginform\">";
	}
	else
	{
	$s = mysql_query("SELECT * FROM members WHERE username='$user' && password='$pass'") or die(mysql_error());
	$checkform = mysql_num_rows($s);

		if ($checkform == "0")
		{
		echo "אחד מהפרטים אינו נכון";
		echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=?act=loginform\">";
		}
		else
		{
		   echo "התחברת בהצלחה";
		   setcookie(user, $user, $hour);
		   setcookie(pass, $pass, $hour);
		   echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=index.php\">";
		}
	}

echo "</td></tr>";
echo "</table>";
}

else if ($act =="loginform") // טופס התחברות
{
if(!isset($_COOKIE['user']))
{
echo <<<LOGINFORM

<form action="?act=logincheck" method="post"> 
<table class="logintable">

	<tr><td valign="top" dir="rtl" class="logintdtable">שם משתמש: </td>
	<td valign="top" dir="rtl" class="logintdtable"><input type="text" name="User"></td>
	</tr>
	<tr><td valign="top" dir="rtl" class="logintdtable">סיסמא:  </td>
	<td valign="top" dir="rtl" class="logintdtable"><input type="password" name="Pass"></td>
	</tr>
	<tr><td valign="top" dir="rtl" class="logintdtable"></td>
	<td valign="top" dir="rtl" class="logintdtable"><input type="reset" value="נקה"><input type="submit" value="התחבר"></td>
	</tr>
</table>
</form>  

LOGINFORM;
}
else
   {
   echo "אתה מחובר למערכת";
   echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=index.php\">";
   }
}

else if($act == "logout")
{
   $past = time() - 100;
   setcookie(user, gone, $past); 
   setcookie(pass, gone, $past); 
   echo "התנתקת בהצלחה";
   echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1;URL=index.php\">";
}

?>

</body>
</html>
הבעיה היא בשורות :
קוד:
		   setcookie(user, $user, $hour);
		   setcookie(pass, $pass, $hour);
  Reply With Quote
ישן 20-07-08, 18:43   # 2
amirs_5
הוסטסניון
 
amirs_5's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: ת"א
גיל: 34
הודעות: 2,168
שלח הודעה באמצעות ICO אל amirs_5 Send a message via Skype™ to amirs_5

amirs_5 לא מחובר  

זה בגלל ששלחת HTML לפני יצירת העוגיה..
אתה צריך לרשום בראש העמוד:
PHP קוד:
ob_start(); 
ובסופו עם
PHP קוד:
ob_end_flush(); 
מקווה שעזרתי..
__________________
אימיל \ מסן : amirs91 [at] gmail.com
  Reply With Quote
ישן 20-07-08, 18:46   # 3
kfir91
חסום
 
מיני פרופיל
תאריך הצטרפות: Apr 2007
הודעות: 220

kfir91 לא מחובר  

ניסי י מקודם לעשות את זה עם ob_end_clean אבל משום מה הוא לא יצר את הקוקיס...
עריכה : הנה גם עכשיו ברגע שאני עושה מה שאמרת הוא באמת לא מציג תשגיאה
אבל הוא לא מבצע ת setcookies יענו הוא מציג אתה לא מחובר לפי התנאי בקוד. שהוא אמור להציג "ברוך הבא" כי התחברתי

Last edited by kfir91; 20-07-08 at 18:51..
  Reply With Quote
ישן 20-07-08, 19:23   # 4
amirs_5
הוסטסניון
 
amirs_5's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: ת"א
גיל: 34
הודעות: 2,168
שלח הודעה באמצעות ICO אל amirs_5 Send a message via Skype™ to amirs_5

amirs_5 לא מחובר  

העוגייה בכל מקרה אמורה להיווצר, תנסה להדפיס אותה כדי לאמת זאת, ותראה מה היא מציגה לך.
__________________
אימיל \ מסן : amirs91 [at] gmail.com
  Reply With Quote
ישן 20-07-08, 19:25   # 5
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

לפי מה שאני זוכר, אחרי SETCOOKIE לא מתבצע אתחול איבר במערך $_COOKIES, אתה צריך לבדוק בדרך אחרת אם העוגיה קיימת או לרענן את הדף.
אני לא בטוח ב-100&#37; שזה נכון
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 20-07-08, 20:50   # 6
kfir91
חסום
 
מיני פרופיל
תאריך הצטרפות: Apr 2007
הודעות: 220

kfir91 לא מחובר  

אני מרענן את הדף זה לא עובד..
והעוגיה מחזירה ריק... למה?
  Reply With Quote
ישן 20-07-08, 20:54   # 7
Elad-A
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 1,987

Elad-A לא מחובר  

תעשה print_r($_COOKIE); בדף ותרשום מה הפלט.
  Reply With Quote
ישן 20-07-08, 20:59   # 8
kfir91
חסום
 
מיני פרופיל
תאריך הצטרפות: Apr 2007
הודעות: 220

kfir91 לא מחובר  

זה רושם את זה :
קוד:
Array ( [__utma] => 3769970.1222316683.1216412329.1216412329.1216412329.1 [__utmz] => 3769970.1216412329.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none) )
  Reply With Quote
ישן 21-07-08, 12:21   # 9
WCMS
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: May 2007
הודעות: 629

WCMS לא מחובר  

ציטוט:
נכתב במקור על ידי kfir91 צפה בהודעה
זה רושם את זה :
קוד:
Array ( [__utma] => 3769970.1222316683.1216412329.1216412329.1216412329.1 [__utmz] => 3769970.1216412329.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none) )
הקוד הזה אומר שיש באתר שלך מודעות של גוגל
ואין פה את העוגייה שלך.

PHP קוד:
setcookie(user$user$hour);
setcookie(pass$pass$hour); 
לא עושים ככה
עושים
PHP קוד:
setcookie("user"$user$hour);
setcookie("pass"$pass$hour); 
מקווה שזה יעבוד!
בברכה, יורי.
  Reply With Quote
ישן 21-07-08, 15:12   # 10
kfir91
חסום
 
מיני פרופיל
תאריך הצטרפות: Apr 2007
הודעות: 220

kfir91 לא מחובר  

עשיתי ככה לפני שאמרת.. זה לא עובד
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 04:54.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ