0

私はここで完全に立ち往生していて、値を取得して設定するための投稿で数十のサンプルを見つけました。私がやろうとしているのは-

  1. ユーザーが私のフォームのテキストボックスに車両の年モデルを入力できるようにします(投稿するように設定)

  2. 次に、この値を可変状態にする必要があります

    $vehicle_year = $_GET['vyear'];
    

    最初のエラーはここにあります...vyearは私のテキストボックスの名前とIDです。エラー-未定義のインデックス'vyear'。私はまだ同じフォーム/ページにいるので、フォームなどの送信はありません。

  3. この値を取得したら、データベースを検索して、(返された)年が付加されているすべてのメーカーを返します-

    $query = "SELECT * FROM `vehicledata` WHERE `year`='$vehicle_year'";
    

    未定義のエラーで上から返された値がまだないため、明らかに機能しません。テキストボックスの名前とIDを変更しようとしましたが、うまくいきませんでした。

  4. これらのレコードが返されたら、選択(ドロップダウン)ボックスに値を追加する必要があります。そこに値を取得する方法がわかりません。ループを実行する必要があるようです。ループを実行する方法はわかっていますが、選択ボックスにオプションを追加する方法がわかりません。

    フォームは送信されないことに注意してください。送信する前に、関連するすべてのデータを最初に読み込む必要があります。

どんな助けでもありがたいです、みんなに感謝します。

PS値を取得してオプションを追加する方法がわかったら、SQLインジェクションに対して追加します。私を動かすには基本が必要です。

HTML://これは私のコードになります...ちょうど私の車輪の
年を検索  

            <?php          

            $vehicle_year = isset($_POST['vehicleyear']) ? $_POST['vehicleyear'] : -1;                

                if ($vehicle_year == -1) {
                echo 'No Value Returned...';
                                    //returns no value...
            } else {
                                    //How to get the value and echo it out...
                echo $vehicle_year;
            }
 //$query = "SELECT * FROM (SELECT * FROM `vehicledata` WHERE `year`='$vehicle_year' ORDER BY `cid` DESC LIMIT 1, 10) AS `table` ORDER BY `cid` ASC";
 $query = "SELECT * FROM `vehicledata` WHERE `year`='$vehicle_year'";

 $result = mysql_query($query);

 while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
$vehicle_id = $line['cid'];
$vehicle_year = $line['year'];
$manufacturer = $line['carfindmake'];

//Get manufacturer data...
$images = get_make($vehicle_year);

if (!empty($make)) {
    echo 'No data';
} else {
    echo 'Found stuff';
}
 }
    ?>

            <td align="right"><span style="visibility:hidden" id="makelabel"><strong>Make</strong>&nbsp;&nbsp;</span></td>
            <!--<td><input name="make" id="make" type="text" class="searchbox" style="visibility:hidden" onClick="toggleVisibility('modellabel'); toggleVisibility('model');"/></td>-->
            <td><select name="make" id="make" class="searchbox" style="visibility:hidden" onClick="toggleVisibility('modellabel'); toggleVisibility('model');"/></td>
4

3 に答える 3

1

2)値が設定されていないため、フォームがまだ送信されていない場合、これによりエラーが発生します。

次の方法でこれを修正します。

$vehicle_year = '';

if ( isset( $_POST['vyear'] ) ) {
    $vehicle_year = $_POST['vyear'];
}
于 2012-10-29T15:26:57.343 に答える
0

私のフォーム(投稿するように設定)

$vehicle_year = $_GET['vyear'];

$_POSTフォームがPOSTを使用するように設定されている場合は、スーパーグローバルを介してフォーム要素にアクセスする必要があります。

$vehicle_year = $_POST['vyear'];

インデックスが設定されている場合と設定されていない場合があるために問題が発生している場合は、PHPを使用isset()して確認してください。インデックスが設定されていなくても、エラーは発生しません。

if(isset($_POST['vyear'])) {
    $vehicle_year = $_POST['vyear'];
}
于 2012-10-29T15:23:56.357 に答える
0

1-フォームがPOSTに設定されている場合は、$ _POST["vyear"]を使用して値を回復する必要があります。

2-テキストボックス名の大文字と小文字を再確認します。

于 2012-10-29T15:24:39.627 に答える