如何从输入框中获取值并将其存储在php变量中?

时间:2014-02-08 07:21:11

标签: php mysql variables http-post concatenation

我正在这个网站上工作,似乎无法让一些东西工作。

我的html中有3个输入:

<form action='' method='post'>
    <input id='counterName' name='counterName' type='text' value='nothing'></input>
</form>

<form action='' method='post'>
    <input type='text' value='3' name='counterNum' class='counter'></input>
</form>

<form action='' method='post'>
    <input type='submit' value='Save' name='save' id='save'></input>
</form>

我想获取前两个(counterName和counterNum)的值,并在单击Save按钮时将其存储在2个变量中。所以我做了:

if(isset($_POST['save'])){
        $counterName = $_POST['counterName'];
        $counterNum = $_POST['counterNum'];
        $prefix = mysql_real_escape_string("`~");
}

您将在一秒钟内看到$ prefix的使用位置。

接下来,我想通过以下列格式连接,将这三个变量保存到MySql的数据库列中。 “~$counterName〜$ counterNum”。我是这样做的:

mysql_query("UPDATE `users` SET `counter` = CONCAT (`counter`,'$prefix') WHERE `userID` = '$userID'");
mysql_query("UPDATE `users` SET `counter` = CONCAT (`counter`,'$counterName') WHERE `userID` = '$userID'");
mysql_query("UPDATE `users` SET `counter` = CONCAT (`counter`,'$prefix') WHERE `userID` = '$userID'");
mysql_query("UPDATE `users` SET `counter` = CONCAT (`counter`,'$counterNum') WHERE `userID` = '$userID'");

我的问题是,当我看到列“计数器”的含义时,我会看到:“~〜”,中间没有变量。我究竟做错了什么?顺便说一下,列的类型是VARCHAR。

谢谢。

1 个答案:

答案 0 :(得分:0)

正如Sadikhasan在评论中所说,你应该在一个表格中添加输入:

<form action='' method='post'>
    <input id='counterName' name='counterName' type='text' value='nothing'></input>
    <input type='text' value='3' name='counterNum' class='counter'></input>
    <input type='submit' value='Save' name='save' id='save'></input>
</form>

这可以解决你的问题。