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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 07-04-06, 07:39   # 1
null
кто ты?
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,177

null לא מחובר  

[מדריך] PHP - הגנה על דף באמצעות HTTP_AUTH

כמו תמיד, נתחיל עם הקוד ואז נפרט
רק שהפעם, יש דוגמא לצפיה: צפה בדוגמא

PHP קוד:
<?
function auth_user() {
  
$realm "Protected Page";
  
header('WWW-Authenticate: Basic realm="['.$realm.'] ID:"');
  
header('HTTP/1.0 401 Unauthorized');
  die(
"Unauthorized access forbidden!");
}

if(isset(
$_GET['logout'])) {
  
auth_user();
}
if (!isset(
$_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
  
auth_user();
}

if(
$_SERVER['PHP_AUTH_USER'] == "protected" && $_SERVER['PHP_AUTH_PW'] == "page")
{
echo 
"Im Protected Content<br />";
}
else
{
auth_user();
}
    
  if(
$_SERVER['PHP_AUTH_USER'] == "logout") {
    
// message for firefox
    
die("You have successfully logged out.");
  }

if (
ereg("MSIE"$_SERVER['HTTP_USER_AGENT'])) {
  
// Use basic logout
  
echo "<a href=\"".$_SERVER['PHP_SELF']."?logout=y\">Logout</a>";
} else {
  
// use other logout for Firefox and other browsers
  
echo "<a href=\"http://logout:logout@".
$_SERVER['SERVER_NAME']."/".$_SERVER['PHP_SELF']."\">Logout</a>";
}
?>

בואו נתחיל לתת הסברים

PHP קוד:
function auth_user() {
  
$realm "Protected Page";
  
header('WWW-Authenticate: Basic realm="'.$realm.'"');
  
header('HTTP/1.0 401 Unauthorized');
  die(
"Unauthorized access forbidden!");


הפונקציה שתשמש אותנו רבות.
מה שהיא בעצם עושה שלבקש מהדפדפן להקביץ חלון עם בקשה לשם משתמש וסיסמה.
אם המשתמש לוחץ על CANCEL זה מציג לו הודעה בהתאם (ראה die(); ).

PHP קוד:
if(isset($_GET['logout'])) {
  
auth_user();
}
if (!isset(
$_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
  
auth_user();


אם אפשרות היציאה מופעל, צא, ובקש שם משתמש וסיסמה מחדש.
אם לא הוקש שם משתמש או סיסמה, בקש אותם שוב.

PHP קוד:
if($_SERVER['PHP_AUTH_USER'] == "protected" && $_SERVER['PHP_AUTH_PW'] == "page")
{
echo 
"Im Protected Content<br />";
}
else
{
auth_user();


אם השם משתמש שווה ל- protected והסיסמה שווה ל- page הראה את התוכן המוסתר.
(להלן: Im Protected Content)
אם השם משתמש לא שווים למה שצוין, בקש אותם שוב.

PHP קוד:
  if($_SERVER['PHP_AUTH_USER'] == "logout") {
    
// message for firefox
    
die("You have successfully logged out.");
  }

if (
ereg("MSIE"$_SERVER['HTTP_USER_AGENT'])) {
  
// Use basic logout
  
echo "<a href=\"".$_SERVER['PHP_SELF']."?logout=y\">Logout</a>";
} else {
  
// use other logout for Firefox and other browsers
  
echo "<a href=\"http://logout:logout@".
$_SERVER['SERVER_NAME']."/".$_SERVER['PHP_SELF']."\">Logout</a>";


קטע היציאה, מותאם לרוב הדפדפנים.

הקוד בצורה נוחה:
קוד:
<?
function auth_user() {
  $realm = "Protected Page";
  header('WWW-Authenticate: Basic realm="['.$realm.'] ID:"');
  header('HTTP/1.0 401 Unauthorized');
  die("Unauthorized access forbidden!");
}

if(isset($_GET['logout'])) {
  auth_user();
}
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
  auth_user();
}

if($_SERVER['PHP_AUTH_USER'] == "protected" && $_SERVER['PHP_AUTH_PW'] == "page")
{
echo "Im Protected Content<br />";
}
else
{
auth_user();
}
    
  if($_SERVER['PHP_AUTH_USER'] == "logout") {
    // message for firefox
    die("You have successfully logged out.");
  }

if (ereg("MSIE", $_SERVER['HTTP_USER_AGENT'])) {
  // Use basic logout
  echo "<a href=\"".$_SERVER['PHP_SELF']."?logout=y\">Logout</a>";
} else {
  // use other logout for Firefox and other browsers
  echo "<a href=\"http://logout:logout@".
$_SERVER['SERVER_NAME']."/".$_SERVER['PHP_SELF']."\">Logout</a>";
}
?>

*תודה לבניה על הרעיון.
*כל הזכויות שמורות לקובלנקו איגור.

תהנו!

תגובות, שאלות, הערות יתקבלו בברכה.
  Reply With Quote
ישן 07-04-06, 09:05   # 2
SyPhEx
משתמש חדש
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
הודעות: 15

SyPhEx לא מחובר  

אתה יכול לבוא אליי למסנג'ר
אני צריך לשאול אותך בקשר למדריך הזה שרשמת..

אחלה מדריך תודה
  Reply With Quote
ישן 07-04-06, 09:10   # 3
yNaxon
אקס מנהל
 
yNaxon's Avatar
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
מיקום: תל אביב
הודעות: 7,481

yNaxon לא מחובר  

אחלה מדריך :P
__________________
בברכה,
יונתן.
  Reply With Quote
ישן 07-04-06, 10:28   # 4
Shay
חבר וותיק
 
Shay's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: שער 5
הודעות: 1,493

Shay לא מחובר  

אחלה מדריך איגור-בהצלחה!
ישר כוח!
__________________
Sex
Drugs
and
H.T.A

  Reply With Quote
ישן 07-04-06, 10:30   # 5
null
кто ты?
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,177

null לא מחובר  

תודה
למישהו יש שאלות? תגובות?
  Reply With Quote
ישן 07-04-06, 11:19   # 6
mlnn
משתמש - היכל התהילה
 
mlnn's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: בחדר של חני
גיל: 34
הודעות: 4,417

mlnn לא מחובר  

מדריך מעולה, תודה
__________________
.

בחורות ערומות
  Reply With Quote
ישן 07-04-06, 18:51   # 7
Try2Guess
חבר פורום
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
הודעות: 127

Try2Guess לא מחובר  

פשש, חידשת שלי =]
__________________
יוסי... לא.
  Reply With Quote
ישן 07-04-06, 19:34   # 8
amirs_5
הוסטסניון
 
amirs_5's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: ת"א
גיל: 33
הודעות: 2,168
שלח הודעה באמצעות ICO אל amirs_5 Send a message via Skype™ to amirs_5

amirs_5 לא מחובר  

תודה אחי, חידשת לי ....
  Reply With Quote
ישן 07-04-06, 19:38   # 9
null
кто ты?
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,177

null לא מחובר  

בבקשה לשניכם.
תבחרו את השיטה שאתם רוצים.
אפשר לעשות עוד שטויות באבטחת מידע.

* אלעד אתה קורא את זה שלח ה"פ [ eLad ]
  Reply With Quote
ישן 07-04-06, 22:59   # 10
חבר|94
Permanently Banned
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
הודעות: 70

חבר|94 לא מחובר  

לא הבנתי איפו אני מגדיר שזה יוביל לדף שאני רוצה?
  Reply With Quote
השב

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

Tags
אבטחה, מדריך למתקדמים, מדריך php


חוקי פירסום
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. הזמן כעת הוא 14:13.

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