-1
$door = $_POST["doorType"];  

$doorWidth;
if ($door=="Single")
{
        $doorWidth = $width;
}
else if ($door=="Double")
{
$doorWidth = $dOneWidth;
}

ページを実行すると、変数 $doorWidth が認識されませんか?

4

2 に答える 2

1
$doorWidth;

何も割り当てません。変数を返すだけです...何にでも。これを行うと PHP が変数にアクセスし、通知が発生します。たとえば、次のように記述します。

$doorWidth = NULL; // assigns something (some default value if $door isn't "Signle" nor "Double")
于 2013-04-22T17:31:25.680 に答える
1

$doorとはかけ離れた値を持っていると思いSingle|Doubleます。これは、アプリケーションの別のエラーが原因である可能性があります。条件文 ( など)に代入しようとしている場合は、変数に適切なデフォルト値を設定する必要あることを学ぶ必要があります。if

$doorWidth = 'not set!';

if ($door=="Single")
{
    $doorWidth = $width;
}
else if ($door=="Double")
{
    $doorWidth = $dOneWidth;
}

ブランチswitchを持つステートメントについてさらに注意してください。default:

switch($door) {
    case 'Single' : 
        // do something
        break;
    case 'Double' :
        // do something else
        break;
    default:
        die('$door has a value far from 'Single|Double'. Currently: ' . $door);
}
于 2013-04-22T17:32:09.657 に答える