0

主に2つのことをチェックするifステートメントの検証があります。まず、「why」という名前のドロップダウンボックスが空かどうかを確認します。空の場合は、適切な理由を指定する必要があることを示すエラーがフロントエンドに表示されます。それはうまくいきます。ここで、「理由」ドロップダウンボックスの値が「その他」であり、コメントボックスが空の場合、別のエラーが発生するという2番目の条件があります。空の場合、これら2つは正常に機能します。 「コメントボックスに訪問の性質を説明してください!」と表示されます。

私の問題は、コメントボックスの長さが15〜45文字になるようにしようとしていることです。私はこのsigninpage.php検証を約20時間忠実に実行して、希望どおりに作成しましたが、目的の場所に到達できませんでした。どんな助けでも素敵でしょう!

if(empty($why)) {
            $errors[] = 'Please make sure to select the proper reasoning for your vistit today!';
    } 
        elseif ($why ==='Other' && empty($comments)) {
            $errors[] = 'Please explain the nature of your visit in the comments box!';

        if (strlen($comments) < 15) {
            $errors[] = 'Your explaination is short, please revise!';
    }
        if(strlen($comments) > 45) {
            $errors[] = 'Your explaintion is to long, please revise!';
    }
    }

インデント:

if(empty($why)) {
    $errors[] = 'Please make sure to select the proper reasoning for your vistit today!';
} 
elseif ($why ==='Other' && empty($comments)) {
    $errors[] = 'Please explain the nature of your visit in the comments box!';

    if (strlen($comments) < 15) {
        $errors[] = 'Your explaination is short, please revise!';
    }
    if(strlen($comments) > 45) {
        $errors[] = 'Your explaintion is to long, please revise!';
    }
}
4

2 に答える 2

0
if(empty($why)) {
        $errors[] = 'Please make sure to select the proper reasoning for your vistit today!';
} 
elseif ($why ==='Other' && empty($comments)) {
        $errors[] = 'Please explain the nature of your visit in the comments box!';
}
elseif($why === 'Other'){
    if (strlen($comments) < 15) {
        $errors[] = 'Your explaination is short, please revise!';
    }
    if(strlen($comments) > 45) {
        $errors[] = 'Your explaintion is to long, please revise!';
    }
}

コメントを空にする必要があるチェック内に長さのチェックを含めていました。

于 2012-12-27T17:04:57.777 に答える
0

これを正しくコピーして貼り付けた場合、括弧が混乱しています。すべてのコメント検証を、次の場合にのみチェックされる単一のセクションに入れます$why==="Other"

if(empty($why))
    $errors[] = 'Please make sure to select the proper reasoning for your vistit today!';
elseif ($why ==='Other'){
    if(empty($comments))
        $errors[] = 'Please explain the nature of your visit in the comments box!';
    else{
        if (strlen($comments) < 15)
            $errors[] = 'Your explaination is short, please revise!';
        if(strlen($comments) > 45)
            $errors[] = 'Your explaintion is to long, please revise!';
    }
}
于 2012-12-27T17:04:01.807 に答える