0

put isset を試してみますが、それでも通知をくれますか? でもまだ直したい…

        Notice: Undefined index: IdUser in C:\wamp\www\contract\content\maintanace\add_newUser.php on line 9
        Notice: Undefined index: Categori in C:\wamp\www\contract\content\maintanace\add_newUser.php on line 10


       $IdUser= isset($_POST['IdUser']);
       $Categori= isset($_POST['Categori']); 

       $IdUser= $_SESSION['IdUser'];
       $Categori= $_SESSION['Categori'];


       $IdUser= (isset($_SESSION['IdUser'])) ? $_SESSION['IdUser'] : false;
       $Categori= (isset($_SESSION['Categori'])) ? $_SESSION['Categori'] : false;

       if($IdUser!='' && $Categori= '1')

            {
                    $apply = mysql_query("SELECT * FROM user WHERE IdUser=    '".$IdUser."' AND Categori='".$Categori."'");
                    $result = mysql_fetch_array($apply);
            }
4

3 に答える 3

0

You can do it this way or you can do it with a ternary statement

 if(isset($_POST['IdUser']) || isset($_POST['Categori']))
        {
        $IdUser = $_POST['IdUser'];
        $Categori= $_POST['Categori']; 
        }
        elseif(isset($_SESSION['IdUser']) || isset($_SESSION['Categori']))
            {
                $IdUser = $_SESSION['IdUser'];
                $Categori= $_SESSION['Categori'];
            }
            else
                {
                    $IdUser = "";
                    $Categori= "";
                }
于 2012-12-12T03:11:02.513 に答える
0

isset は true または false の値を返すため、

$IdUser= isset($_POST['IdUser']);

$IdUser を true または false として設定します。これはあなたが達成しようとしていることではありません。

おそらく、このようなことを試してみませんか?あなたが何を求めているのか、まだ完全にはわかりませんが。

if(!isset($_SESSION['IdUser'])){
//Register SESSION variables.
}
于 2012-12-12T02:46:35.470 に答える
0

セッションのインデックスで isset をチェックしていません。

次のようなことを試すことができます:

$IdUser= (isset($_SESSION['IdUser'])) ? $_SESSION['IdUser'] : false;
$Categori= (isset($_SESSION['Categori'])) ? $_SESSION['Categori'] : false;
于 2012-12-12T02:46:46.980 に答える