2017-12-03 3 views
1

PHPでMySQLでコーディングするのは比較的新しいです。ここに問題があります: 私は私のクエリから得ている結果に基づいて選択されたラジオボタンが欲しいです。簡単にするために、私はタスクを実行するために必要なフィールドだけを選択します。全体的に、サイト全体は、私が働いているローカルコンピュータショップの修復システムであり、私が大学で勉強しているクラスのための私のシニアプロジェクトです。他のフィールドの中のデータベースには、顧客が自分のコンピュータ(主にラップトップ)を持ち込んだときや、電源アダプターを使用しているかどうかのための値「cust」または「csc」を持つadapterTypeがあります。私は、アダプタの値をエコーし​​た場合PHPはクエリの結果に基づいて正しいラジオボタンを選択します

クエリが

$query = "SELECT adapterType FROM repair WHERE repairID = '$repairID'"; 
    $result = mysqli_query($mysqli, $query); 
    list($adapter) = mysqli_fetch_row($result); 

をされ、私は私がしたい値を取得します。

別のページに、私は修理のリストを持っており、それぞれの隣にはrepairIDに基づいて修理をロードする更新ボタンがあります。 repairUpateページには、修復テーブルのそのフィールドに関連する特定の値を保持するさまざまなテキストフィールドがあります。私はまた、アダプターの種類のラジオボタンがあります。私が持っている

質問から得た$ adapterの値に基づいて正しいラジオボタンを選択または "チェック"するにはどうすればよいですか?

私はこれが非常に長い投稿であることを知っていますが、私はすべてを説明しなければなりませんでした。お待ちいただいてありがとうございます。

+0

jeff

+0

あなたのコードはSQLインジェクションに対して脆弱です。代わりに[prepared statements](https://www.youtube.com/watch?v=nLinqtCfhKY)を使用する方法を学んでください。 –

+0

@tereškoプリペアドステートメントに更新するのが最適です.OPはSQLインジェクションにオープンで、現在はmysqli_real_escape_string()や他のエスケープを使用している可能性があるため投機的です。 – Sean

答えて

1

シンプルな三元はあなたが複数のボタンを持っているchecked="checked"

$checked = ($adapter == 'csc') ? 'checked="checked"' : ''; 

を設定することが可能になり、あなたが選択を確認し、ループ内でそれらを作成することができます -

$array = array("csc"=> "CSC A/C", "cust" => "Cust A/C"); 
foreach($array as $value => $name) { 
    $checked = ($adapter == $value) ? 'checked="checked"' : ''; 
    echo "<input type=\"radio\" name=\"adapter\" value=\"{$value}\" {$checked}> {$name}"; 
} 
+0

ありがとうございました!投稿を書き込む前に、あなたが投稿したものと似ている他の回答を見ましたが、うまくいきませんでした。あなたたちはやったが、ありがとう! –

関連する問題