1

コード内の言語で申し訳ありませんが、誰かがこの問題を手伝ってくれませんか。誰かがオプションを選択し、それがデータベースに挿入されるボタンをクリックしたときに、名前がすべて正しいかどうかなどをすでにチェックアウトしているようにしようとしています。

注: データベースからドロップダウン リストに値を選択しようとしているのではなく、アカウントの申請書のように、値を挿入するだけです。

注: 誰かが同じ質問をした場合、それは素晴らしいことです! コメントにリンクを貼り付けていただければ、ありがとうございます。

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<select name="room" value="options">
<option value="Einstaklings" name="102">Alment Einstaklings Herbergi</option>
<option value="Tveggja" name="102">Alment Tveggja manna Herbergi</option>
<option value="Business" name="201">Business Herbergi</option>
<option value="Fjolskyldu" name="301">Fjölskyldu Herbergi</option>
<option value="Svitu" name="401">Svítu</option>
</SELECT>
<input type="submit" value="Senda"/>
</form>

<?php

$db_tengi=@mysql_connect('localhost', 'root', '');
    if (!$db_tengi) {
        exit('<p>Cant Connect</p>');
    };

if(!@mysql_select_db('hotel')){
    exit('<p>Cant Connect</p>');
};



$room = array(
'Einstaklings' => 101,
'Tveggja' =>102,
'Business' => 201,
'Fjolskyldu' =>301,
'Svítu' => 401
 );

function generateSelect($name = '', $options = array()) {
$html = '<select name="'.$name.'">';
foreach ($options as $option => $value) {
    $html .= '<option value='.$value.'>'.$option.'</option>';
}
$html .= '</select>';
return $html;
 }
 $html = generateSelect('room', $room);


 if (
    $sql = "INSERT INTO `registration` SET 
    room_ID_FK='$room'"
    )
    if(@mysql_query($sql)){
        echo '<p> Insert Complete</p>';
    }
    else{
        echo '<p> Error Insert failed.' . mysql_error() . '</p>'; 
    };


  ?>
4

2 に答える 2

1

わかりませんが、アイスランド語(またはそれが何であれ)を読みませんが、$ roomを使用する代わりに、関数で毎回新しい配列を宣言しているように見えますか?

置き換えてみてください:

function generateSelect($name = '', $options = array()) {

と :

function generateSelect($name, $options) {
于 2012-05-06T02:01:00.730 に答える
1

1)あなたの選択では、各オプションに名前を付けないでください

<select name="room" value="options">
<option value="Einstaklings">Alment Einstaklings Herbergi</option>
<option value="Tveggja">Alment Tveggja manna Herbergi</option>
<option value="Business">Business Herbergi</option>
<option value="Fjolskyldu">Fjölskyldu Herbergi</option>
<option value="Svitu">Svítu</option>
</SELECT>

2) 投稿されたデータを受け取る必要があります。それはスーパーグローバル配列 $_POST にあります。

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

3) データベースに接続した後、このデータをデータベースに書き込む必要があります。

于 2012-05-06T01:54:10.373 に答える