使用MySQL数据重新填充/编辑HTML表单输入

时间:2016-04-26 17:51:05

标签: php html mysql

作为PHP和SQL的新手,我构建了一个包含20个输入的简单HTML表单,允许用户通过输入类型=文本或文件输入特定数据。我已经构建了一个mysql数据库,用于插入/保存此用户数据。一切正常,这对我来说是一项重大成就。

我正在寻求下一步的帮助,我认为这一步将被称为“编辑”?

此步骤允许用户在以后调用他们输入的mysql数据进行编辑和保存。希望将此调用的数据直接注入原始HTML表单。现在,似乎需要一个方法(可能是一个HTML表单“id”输入),它从数据库调用,与该用户关联的特定记录(包括所有20个数据输入)。我在想什么?

我正在通过简单而详细的方法寻求帮助/指导来解决这一步骤。请注意,使用一些示例,我在此“编辑”步骤中的几次尝试都失败了。我没有牢牢掌握这个PHP,但却渴望变得精通。

这是我当前工作代码的模型,精简版。我删除了$connection = mysql_connect.

这是我构建的PHP,效果很好!

<?php
require('db.php');

if (isset($_POST['first_name'])){

    $first_name = $_POST['first_name'];

    $favorite_color = $_POST['favorite_color'];

    $trn_date = date("Y-m-d H:i:s");

    $query = "INSERT into `form_data` (first_name, favorite_color, trn_date) VALUES ('$first_name', '$favorite_color', '$trn_date')";
    $result = mysql_query($query);

    if($result){
        echo "<div class='form'><h1>First Name & Favorite Color POST to db was successfull.</h1>
        <br/><h3>Click here to return <a href='https://jakursmu.com/tapcon_builder/tb_form_data_1.1.php'>TapCon Builder</a></h3>
        </div>";

    }
}else{

&GT;

这是HTML用户表单,适用于PHP脚本:

<div class="form">
    <h1>First Name & Favorite Color "POST" to db Test</h1>
    <form target="_blank" name="registration" action=" " method="post">
        <p> First Name<input name="first_name" type="text" placeholder="First Name" /> </p>
        <p> Favorite Color <input name="favorite_color" type="text" placeholder="Favorite Color" /> </p>
        <p> <input type="submit" name="submit" value="Submit / Update to db" /></p>
    </form>
</div>

假设用户使用“first_name”查询数据库,当此“编辑”步骤完成时,最终结果将呈现/注入用户“first_name”和“favorite_color”回到原始HTML表单。这有意义吗?

我为此帮助帖子创建的数据库如下所示:

database image

当用户希望编辑他们的数据时,他们可以在表单文本输入中输入他们的“first_name”(即假设?),其中将在数据库中找到他们的“first_name”。此数据库查询的输出结果将被注入原始表单,可供任何用户编辑。

User Edit for:  Results (in origingal form):
Jack            Jack    Black
Jeff            Jeff    Green
Randall         Randall Red
So on.........

我希望在提供任何有经验的帮助或指导的情况下,这种解释是有道理的。

感谢您的观看!

1 个答案:

答案 0 :(得分:0)

仅用于练习目的,但可以在适当的时候查看准备好的陈述。

首先创建你的php文件

DefWindowProc

<form method="post" action="edit.php">
  <?php

  //in ur php tag. select items from the row based on an id you've passed on to the page

  $sql = "select * from 'form_data' where blah = '$blah'";
  $result = mysqli_query($connection, $sql);

  if($result){

     $count = mysqli_num_rows($result);
     if($count > 0) {

         while($row = mysqli_fetch_assoc($result)){

            $name = $row['firstname'];
            $lname = $row['lastname'];

            //you can now echo ur input fields with the values set in
            echo'

                 <input type="text" value="'.$name.'" >
                   ';//that how you set the values


         }

     }


 }

  ?>

最后,您可以运行并更新提交此动态生成的表单输入的语句。

另外请切换到mysqli或pdo,比不推荐使用的mysql好多了。 查看准备好的陈述。希望这个漂亮的例子引导你走上正确的道路......