الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]هل يوجد بديل للامر header(location

بدأه rohaili في 10 أبريل 2013 · 9 رد · 1,588 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هل يوجد بديل للامر header(location


 


لتوجيه المستعرض لصفحة اخرى


300_130.gif

#2

استخدم JavaScript يالطريقة التالية

window.location = example.com

لكن المشكلة اذا قام المستخدم بايقاف دعم javascript على متصفحه

1
#3

استخدم كود html

<meta HTTP-EQUIV=”REFRESH” content=”0; url=http://www.yourdomain.com/index.html”>
#4

جزاكما الله خيرا


 


سأجرب الآن


300_130.gif

#5
<?php
include 'connect.php';
if (isset($_POST['b'])) {
    $id = $_POST['id'];
    $pass = $_POST['pass'];

    $query = "select * from teachers where id = " . $id . " and pass = " . "'$pass'";
    $result = mysqli_query($dbc, $query);
    $count = mysqli_num_rows($result);

        if ($count == 1) {
            $row = mysqli_fetch_array($result);
            session_start();
            $_SESSION['id'] = $row['id'];
            $_SESSION['job'] = $row['job'];
            switch ($_SESSION['job']) {
                case 1: header("Location: admin_main.php");
                    break;
                case 2: header("Location: sch_main.php");
                    break;
                case 3: header("Location: sup_main.php");
                    break;
                case 4: header("Location: teacher_main.php");
                    break;
            }
        }
        else {
            $m = "رقم الهوية أو كلمة المرور غير صحيحة";
            header("Location: index.php?m=" . $m);
        }
} 
else {
    $m = "رقم الهوية أو كلمة المرور غير صحيحة";
    header("Location: index.php?m=" . $m);
}
?>

كيف استخدم الحلان السابقان في الصفحة السابقة

 

وجزاكم الله خيرا

300_130.gif

#6
<?php
include 'connect.php';
if (isset($_POST['b'])) {
    $id = $_POST['id'];
    $pass = $_POST['pass'];

    $query = "select * from teachers where id = " . $id . " and pass = " . "'$pass'";
    $result = mysqli_query($dbc, $query);
    $count = mysqli_num_rows($result);

        if ($count == 1) {
            $row = mysqli_fetch_array($result);
            session_start();
            $_SESSION['id'] = $row['id'];
            $_SESSION['job'] = $row['job'];
            switch ($_SESSION['job']) {
                case 1: ?><meta HTTP-EQUIV='REFRESH' content="0; url=admin_main.php"><?php //header("Location: admin_main.php");
                    break;
                case 2: ?><meta HTTP-EQUIV='REFRESH' content="0; url=sch_main.php"><?php //header("Location: sch_main.php");
                    break;
                case 3: ?><meta HTTP-EQUIV='REFRESH' content="0; url=sup_main.php"><?php //header("Location: sup_main.php");
                    break;
                case 4: ?><meta HTTP-EQUIV='REFRESH' content="0; url=teacher_main.php"><?php //header("Location: teacher_main.php");
                    break;
            }
        }
        else {
            $m = "رقم الهوية أو كلمة المرور غير صحيحة";
            //header("Location: index.php?m=" . $m);
            ?><meta HTTP-EQUIV='REFRESH' content="0; url=index.php?m=<?php echo $m; ?>"><?php
        }
} 
else {
    $m = "رقم الهوية أو كلمة المرور غير صحيحة";
    //header("Location: index.php?m=" . $m);
	?><meta HTTP-EQUIV='REFRESH' content="0; url=index.php?m=<?php echo $m; ?>"><?php
}
?>

لكن ما سبب عدم استخدام header؟

#7

<?php

session_start();

session_cache_limiter("nocache");

include 'connect.php';

if (isset($_POST['b'])) {

$id = $_POST['id'];

$pass = $_POST['pass'];

$query = "select * from teachers where id = " . $id . " and pass = " . "'$pass'";

$result = mysqli_query($dbc, $query);

$count = mysqli_num_rows($result);

if ($count == 1) {

$row = mysqli_fetch_array($result);

$_SESSION['id'] = $row['id'];

$_SESSION['job'] = $row['job'];

switch ($_SESSION['job']) {

case 1: header("Location: admin_main.php");

break;

case 2: header("Location: sch_main.php");

break;

case 3: header("Location: sup_main.php");

break;

case 4: header("Location: teacher_main.php");

break;

}

}

else {

$m = "رقم الهوية أو كلمة المرور غير صحيحة";

header("Location: index.php?m=" . $m);

}

}

else {

$m = "رقم الهوية أو كلمة المرور غير صحيحة";

header("Location: index.php?m=" . $m);

}

?>

#8

جزاكم الله خيرا


قمت بتغيير الخادم وانتقلت لخادم آخر ولم تظهر المشكلة ولم اغير header


300_130.gif

#9

من الخطأ ترك البيانات الخاطئة تصل للسيرفر ليتم التحقق من الخطأ هناك ، الافضل ان يتم التحقق من النموذج في نفس الصفحة في المتصفح وامام المستخدم بواسطة الجافا سكربت وقبل ذلك يجب اعتماد حقول html5 الجديدة التي تتعرف تلقائيا على نوع الادخال

فاليوم هنالك input type=email

input type=date

input type=number

الخ

#10
abubasilalraqi كتب:

من الخطأ ترك البيانات الخاطئة تصل للسيرفر ليتم التحقق من الخطأ هناك ، الافضل ان يتم التحقق من النموذج في نفس الصفحة في المتصفح وامام المستخدم بواسطة الجافا سكربت وقبل ذلك يجب اعتماد حقول html5 الجديدة التي تتعرف تلقائيا على نوع الادخال فاليوم هنالك input type=email input type=date input type=number الخ

كلامك غير صحيح اخي

لانه في حال كان المستخدم قد اوقف الجافا سكريبت في مستعرضه او كان يستخدم نسخ لا تدعم html 5 من المستعرض فعندها سوف يقوم بكل سهولة باختراق الموقع بكل سهولة.

مواضيع مشابهة