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

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 回答
1

不知道我明白了,但我又没有读过冰岛语(或其他什么),但看起来你每次都在函数中声明一个新数组而不是使用 $room ?

尝试更换:

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

和 :

function generateSelect($name, $options) {
于 2012-05-06T02:01:00.730 回答