0

このコードに問題があります:

    <?php   echo "<meta http-equiv='refresh' content='3;search_enroll.php?&id='.$id />"; ?>

このコードを使用して、このページからこのページに値を渡しますが、$id空ではありません。エコー$idしたところ、値が保持されています。そしてこれは受信側のコードです:

   <?php
            if (isset($_POST['SearchS'])){
                $id = $_POST['searchstudent'];

            }else if(!empty($_GET['id'])){
                $id = $_GET['id'];
            }
            else if(!empty($_GET['student_id'])){
                $id = $_GET['student_id'];
            }

            else {
                $id= $_REQUEST['student_id']; <--- this is line 37
            }
            ?>

現在このエラーノートがあり、2番目のelseステートメントでコードを取得する必要があります。

Notice: Undefined index: student_id in C:\xampp\htdocs\Thesis\search_enroll.php on line 37
4

5 に答える 5

2

文字列を正しくエスケープするか、まったく実行しないでください。

<?php
    echo "<meta http-equiv='refresh'
                content='3;search_enroll.php?id=".$id."' />"; ?>
于 2012-08-29T12:36:18.970 に答える
0

このエラーは、PHPエラーレポート設定が原因で発生します。

通常、変数が適切に設定されていない場合に表示されます。

$_POST['action']を使用する前に、が設定されているかどうかを確認してください。

于 2012-08-29T12:38:41.567 に答える
0

メタはそのようには使用されません。そのようなCONTENT属性だけでなく、URLサブ属性でURLを指定するのは嫌いです

<META HTTP-EQUIV="Refresh" CONTENT="n; URL=MyURL">

http://en.wikipedia.org/wiki/Meta_refresh

そこで、あなたのパラメータは決して設定されません

于 2012-08-29T12:40:39.410 に答える
0

エラーが発生@した場合は、変数の前にサプレッサーを 使用してください。Undefined index

このエラーは、変数が最初に宣言されておらず、コードで使用した場合に発生します。

たとえば。

 else {
     @$id= @$_REQUEST['student_id']; <--- this is line 37
 }

しかし、あなたの場合、このelse条件は実行されるべきではありません。

于 2012-08-29T12:42:56.463 に答える
0

やったほうがいい:

else {
    if(isset($_REQUEST['student_id'])){
        $id= $_REQUEST['student_id'];
    }
}

これにより、キーにアクセスする前に、student_idキーがに存在することを確認$_REQUESTできます。

チェックなしで、それは投げますNotice

于 2012-08-29T14:32:29.000 に答える