【问题标题】:How to make a form that updates a database?如何制作更新数据库的表单?
【发布时间】:2015-03-22 18:16:40
【问题描述】:

当用户在我的表单中填写一些值时,我需要更新数据库(基本上只是执行一些简单的查询)。我需要提交按钮来执行多个查询,例如:

UPDATE table SET column1 = column1 - $_POST['bananas'] WHERE id = $steamID
UPDATE table SET column1 = column1 + $_POST['bananas'] WHERE id = $_POST['steamid']

我正在使用它来发布将用于更新数据库的信息

<form action="bananas.php" method="POST">
Amount:<br>
<input type="text" name="bananas"><br>
Recipient SteamID:<br>
<input type="text" name="steamid"><br>
<input type="submit" name="bananas|steamid"><br>
<?php
if (isset($_POST['submit']))
  {
  // Execute this code if the submit button is pressed.
  $formvalue = $_POST['bananas'];
  $formvalue = $_POST['steamid'];
  }
  echo $_POST['bananas'];
  echo $_POST['steamid'];
?>

由于未填写值,我无法在页面上激活查询并给出错误。他们只能在用户按下提交时执行查询并更新我的数据库。当用户按下提交时,我如何使用这个表单来执行我需要的查询?

注意事项:$steamID 已经是登录用户的 id 变量,并且我已经连接到我的数据库和所有这些设置。表格就是我需要帮助的全部内容。

【问题讨论】:

  • 好的,您有一个表单,并且您知道如何处理表单发布,并且您有一个 UPDATE 语句。研究 MySQLi 或 PDO 以了解如何运行查询。不过,关于参数化的内容值得一读 - 目前 SQL 中的 $_POST 引入了 SQL 注入漏洞。
  • 我确切地知道如何运行查询,我的网站上现在有一整页。我只是不知道如何仅在用户按下提交时运行查询。
  • (顺便说一句,我认为否决票的原因是您没有明确表示您知道如何运行查询,并且似乎在问一个过于广泛的问题。很高兴您解决了它,但是!)。

标签: php sql forms


【解决方案1】:

好吧,我只是让其他人帮我解决了这个问题,很抱歉给我带来了麻烦。 我太愚蠢了,没有意识到您必须将查询放在action="file.php" 中,现在我知道了,这里有任何其他有此问题的人的信息,我的问题已经解决了。

【讨论】:

    猜你喜欢
    • 2016-04-19
    • 1970-01-01
    • 2012-04-18
    • 1970-01-01
    • 2016-03-26
    • 1970-01-01
    • 1970-01-01
    • 2019-08-21
    • 1970-01-01
    相关资源
    最近更新 更多