SELECTボックスとユーザ入力に基づいて検索オプションを作成しようとしています(両方とも必須です)。しかし、次のコードでは、正しい入力と誤った入力の両方が間違った入力として表示されています。コード内で何が間違っているか説明してください。ここでPHPで適切な出力を表示する際に問題が発生する
HTML
<form action="" method="POST">
<select name="selectOpt">
<option>Select a list</option>
<option value="one">ID</option>
<option value="delName">Dealer Name</option>
<option value="medName">Medical Name</option>
</select>
<input type="text" name="uinput" placeholder="Enter Search Key"/>
<button type="submit" name="submit">search</button>
</form>
PHP
if(isset($_POST['submit'])){
if(!empty($_POST['selectOpt']) && !empty($_POST['uinput'])){
if($_POST['selectOpt']=='one'){
$id = $_POST['selectOpt'];
if (!preg_match("/^[0-9]*$/",$id)){
echo "not valid";
}else{
echo "valid";
}
}
}else{
echo "Enter Value";
}
}
あなたは出力のために何を得ていますか、そしてあなたは渡している入力は何ですか? – chris85
2つの相互に排他的な条件があります。 'selectOpt'が" one "の場合、数値を入力している場合は数値(' preg_match'条件) –
にすることもできません。正しいものと思われる入力が間違って表示されています – phpLover