1

次のドロップダウンボックスがあります。このボックスから値を選択し、Php を使用して別のページに送信できるようにしたいと考えています。

これは、ドロップ ダウン ボックスの現在のコードです。

バージョン 2:

<form style="margin-top:20px; margin-right:+50px" name="formname" method="post" action="search.php">
<div class="controls controls-row">
<select name="select1" id="select1"> 
<option value="SelectIsland">Select your island</option>
<option value="stMaarten">St. Maarten</option>
<option value="Aruba">Aruba</option>
<option value="Curacou">Curacou</option>
<option value="StBarths">St. Barths</option>
</select>   

<select name="select2"> 
<option value="SelectLoc">Select your location</option>
<option value="Philipsburg">Philipsburg</option>
<option value="SimpsonBay">Simpson Bay</option>
<option value="Maho">Maho</option>
<option value="Cupecoy">Cupecoy</option>
<option value="Middleregion">Middle region</option>
<option value="MadameEstate">Madame Estate</option>
<option value="StPeters">St. Peters</option>
<option value="DawnBeach">Dawn Beach</option>
</select>
<input type="submit" name="button" class="btn btn-primary" value="Find Restaurant" style="margin-top:-10px; margin-right:0px" />
</div>
<?php 
$select1 = $_POST['select1'];
?>
</form>

これを使用して、$select1 を search.php に渡そうとしています: $select1 = $_POST['select1'];

ただし、何もせずに次のエラーが発生します:

$select1 = $_POST['select1']; を削除すると それは機能しますが、search.phpでは必要な値が得られません。

これはsearch.phpの私のコードです:

同じことが select2 にも当てはまります。何もせずにすでに index.php にいると、エラー Undefined index が表示されます。

<?php
if(isset($_POST['select1']) && isset($_POST['select2'])) {
$select1 = $_GET['select1'];
$select2 = $_GET['select2'];
echo $select1;
echo "";
echo $select2;
}
else{
echo "not set";
}
?> 

ここに画像の説明を入力 これは、このページにアクセスしたときの index.php のエラーです。

4

5 に答える 5

3

これは、アンカー要素を使用しているためです。変化する

<a href="search.php" class="btn btn-primary" style="margin-top:-10px; margin-right:0px"type="button" name="button">Find Restaurant</a>

<input type="submit" class="btn btn-primary" value="Find Restaurant" />

これにより、フォーム データがポストされます。search.phpページをそれ自体に送信する場合は、に変更action="search.php"action=""ます。

注: 同じ方法でボタンのスタイルを設定するには、CSS を変更する必要があります。

于 2013-06-10T12:34:32.610 に答える
1

アクションを使用しているときにボタンからアンカータグを削除するには、次のようにする必要があります

<input class="btn btn-primary" type="submit" name="button" />
于 2013-06-10T12:45:05.010 に答える
0

あなたの更新された解決策 私はこの問題を私のコンピュータで実行してい
ます あなたの島を選択してください St. Maarten Aruba Curacou St. Barths

<select name="select2"> 
<option value="SelectLoc">Select your location</option>
<option value="Philipsburg">Philipsburg</option>
<option value="SimpsonBay">Simpson Bay</option>
<option value="Maho">Maho</option>
<option value="Cupecoy">Cupecoy</option>
<option value="Middleregion">Middle region</option>
<option value="MadameEstate">Madame Estate</option>
<option value="StPeters">St. Peters</option>
<option value="DawnBeach">Dawn Beach</option>
</select>
<!--<input type="submit" name="button" value="search"  />
-->

<?php
if(isset($_POST['select1']) && isset($_POST['select2'])) {
$select1 = $_POST['select1'];
$select2 = $_POST['select2'];
echo $select1;
echo "";
echo $select2;
}
else{
echo "not set";
}
?>
于 2014-02-05T08:52:10.130 に答える
0

私はそれを解決しました。$_get の代わりに $_POST のみを使用して購入し、私も削除しました

<?php 
$select1 = $_POST['select1'];
?>

現在、エラー - undefined index - は表示されなくなり、search.php ページで正しい値を取得できます。私を助けてくれてありがとう。

于 2013-06-10T13:23:18.647 に答える