将多个表单元素更新到不同列的 PHP 表单

标签 php mysql forms posting

我正在尝试构建一个简单的表单来更新我的 mySql 数据库。 如果我在页面上只有 1 个表单元素(输入),我可以成功,但我无法弄清楚每个 pgae 如何拥有多个表单元素(输入)。

当我添加多个输入时,数据库不会添加任何内容。

我知道我的代码很接近,但我不知 Prop 体在哪里以及应该做什么。

附言- 我对此还很陌生,正在学习......

这是我的

<?php

$host = 'hostName';
$user = 'userName';
$password = 'password';

$link = mysql_connect($host, $user, $password);

$selected = mysql_select_db('dbName', $link);

if(!isset($_POST['text-input']))
{


echo '<html>
        <body>
                <form action="post.php" method="post">
                        <input type="text" name="text-input" id="text-input" value="Update MyDataColumn" style="width:300px;" />
                        <input type="submit" value="Submit" />
                </form>
        </body>
</html>'; }


else {
$form_input =  $_POST['text-input'] ;


mysql_query('INSERT INTO `tableName` (columnName) VALUES ("' . $form_input . '");');

echo '
<html>
        <body>
                <script type="text/javascript">
                        alert(\'Database now contains: <?php echo $form_input ?>. Redirecting...\');
                        window.location  = \'http://url.com\';
                </script>

        </body>
</html>';
}
?>

我想弄清楚如何发布到同一个数据库/表中的多个列。

好的,根据下面的答案,我将代码修改为如下所示:

<?php

                $host = 'dbHost';
                $user = 'dbUser';
                $password = 'dbPassword';

                $link = mysql_connect($host, $user, $password);

                $selected = mysql_select_db('dbName', $link);

                if(!isset($_POST['text-input']))
                {


                echo '
                    <form action="index.php" method="post">
                        <input type="text" name="text-input" id="text-input" value="Update itemName" style="width:300px;" />
                        <input type="text" name="text-input2" id="text-input2" value="Update itemDescription" style="width:300px;" />
                        <input type="text" name="text-input3" id="text-input3" value="Update productID" style="width:300px;" /> 
                        <input type="text" name="text-input4" id="text-input4" value="Update itemPrice" style="width:300px;" />    
                        <input type="submit" value="Submit" />
                    </form>'
                    ; }


                else {
                $form_input =  $_POST['text-input'] ;
                $form_input2 =  $_POST['text-input2'] ;
                $form_input3 =  $_POST['text-input3'] ;
                $form_input4 =  $_POST['text-input4'] ;


               mysql_query('INSERT INTO `items` (itemName, itemDescription, productID, itemPrice)
               VALUES ("' . $form_input . '", "' . $form_input2 . '", "' . $form_input3 . '", "' . $form_input4 . '");

                echo '
                <html>
                        <body>
                                <script type="text/javascript">
                                        alert(\'Database has been updated. Redirecting to previous url.\');
                                        window.location  = \'http://url.com\';
                                </script>

                        </body>
                </html>';
                }
                ?>

这段代码发生了什么是我得到了 语法错误,意外的 '>'

最佳答案

您只需修改查询以设置多列。

HTML:

<form action="post.php" method="post">
    <input type="text" name="text-input" id="text-input" value="Update MyDataColumn" style="width:300px;" />
    <input type="text" name="text-input2" id="text-input2" value="Update MyDataColumn2" style="width:300px;" />
    <input type="text" name="text-input3" id="text-input3" value="Update MyDataColumn3" style="width:300px;" />    
    <input type="submit" value="Submit" />
</form> 

PHP:

$form_input =  $_POST['text-input'] ;
$form_input2 =  $_POST['text-input2'] ;
$form_input3 =  $_POST['text-input3'] ;


mysql_query('INSERT INTO `tableName` (columnName, columnName2, columnName3) VALUES ("' . $form_input . '","' . $form_input2 . '","' . $form_input3 . '");'); 

关于将多个表单元素更新到不同列的 PHP 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973392/

相关文章:

php - 是否可以将 PHP 的 filter_input() 过滤器标志与 AND/OR 结合使用?

php - 使用 PHP 请求重新排序 div 位置

php - 如何将循环值传输到另一个 PHP 表

forms - django-filter 更改默认表单外观

php - Sql 找到另一个具有相同值的表并在输出中添加它们的 ID

php - 组织 Div 的 css 框模型

c# - sql语句c#有问题

mysql - 从 mysql 中的非规范化数据中选择最新的

ios - 在 SwiftUI 中使用动态表单和字段状态

php - 内联表单 PHP?