【发布时间】:2011-09-15 17:46:53
【问题描述】:
我有几个看起来像这样的选择语句。我需要将 php 变量传递到我的数据库中。
<select name="gamestart" >
<?php for($gamestart=1; $gamestart<=24; $gamestart++)
echo "<option value='$gamestart'>$gamestart:00</option>";
?>
</select>
这是我在数据库中的插入语句,其中包含其他类似的变量,我遇到了同样的问题。
<?php
$mysql_query = "INSERT INTO soccer_games (gamestart, gameend)
VALUES ('$gamestart', '$gameend')";
$this->db->query($mysql_query);
?>
到目前为止,值已被放入数据库,但插入到数据库中的值是数字 25(甚至不是我的循环中的选项,如您所见),无论我在形式。
================
编辑 1: 问题可能是我没有使用表格(我以无限的智慧没有意识到我需要一个表格)。
我假设我需要这种性质的东西......
public function insertstatements(){
<?php
$mysql_query = "INSERT INTO soccer_games (gamestart, gameend)
VALUES ('$gamestart', '$gameend')";
$this->db->query($mysql_query);
?>
}
<form method="post" action="<?php insertstatements(); ?>">
<select name="gamestart" >
<?php for($gamestart=1; $gamestart<=24; $gamestart++)
echo "<option value='$gamestart'>$gamestart:00</option>";
?>
</select>
</form>
【问题讨论】:
-
请说明您如何从 HTTP 请求中读取
gamestart的值 -
在查询前你在哪里给
$gamestart和$gameend赋值?我感觉您在提交表单之前正在运行插入代码...(这就是为什么gamestart是 25,这是循环完成后它的值) -
向我们展示您如何在查询中从 GET/POST 获取
$gamestart的值,以及您使用它执行的所有操作。更新:是的,三个相同的问题打在你Pascal,试着咀嚼......:P