如何更新数据库。将数据库中的数据添加到表单后

时间:2018-05-26 12:46:12

标签: php mysql

如何更新数据库。我不会添加新记录。 数据与从数据库中检索的代码相同。我不知道怎么 嵌入第二个函数,从表单和更新数据库。 从数据库读取到表单工作

<form action="" method="put">
  <table width="100%">
   <thead>
    <tr>
      <td class="colsp" colspan="5">Terminarz</td>
    </tr>
    <tr class="subcolor title-row">
      <td style="width: 10%">id</td>
      <td style="width: 40%" class="left">Gospodarz</td>
      <td style="width: 40%">Gość</td>
      <td style="width: 5%">Home<br/>Goals</td>
      <td style="width: 5%">Guest<br/>Goals</td>
   </tr>
      </thead>
    <tbody>
<?php
if(isset($_POST['Submit'])){
    $hGoals = $_POST['inphomegoals'];
    $gGoals = $_POST['inpguestGoals'];
    $update="UPDATE matches SET homeGoals=$hGoals, guestGoals=$gGoals where matchID = ".$matchID;
    $stmt = $conn->prepare($update);
    $stmt->execute();
    echo $stmt->rowCount() . " records UPDATED successfully";
    }
    $display = $conn->prepare(
                              "SELECT
                                   m.matchID,
                                   hc.clubName as homeClub,
                                   gc.clubName as guestClub,
                                   m.homeGoals,
                                   m.guestGoals
                           FROM matches AS m
                           JOIN clubs AS hc ON hc.clubID = m.homeID
                           JOIN clubs AS gc ON gc.clubID = m.guestID
                           ORDER BY matchID ASC ");

$display->execute();
$results = $display->fetchAll();
foreach ($results as $index => $row){
?>
        <tr>
            <td><label><?php echo $row['matchID']; ?></label></td>
            <td><label><?php echo $row['homeClub']; ?></label></td>
            <td><label><?php echo $row['guestClub']; ?></label></td>
            <td><label><input type="number" name="inphomegoals" value="<?php echo $row['homeGoals']; ?>"/> : </label></td>
            <td><label><input type="number" name="inpguestGoals" value="<?php echo $row['guestGoals']; ?>"</label></td>
        </tr>
<?php } ?>
    </tbody>    
          <tfoot>
            <tr>
             <td colspan="5"><input type="submit" value="Add To Base" name="Submit" style="width: 150px; height: 45px"</td>
            </tr>
          </tfoot>
</table>
</form>

connect.php

<?php
 $db_server="localhost";
 $db_username="root";
 $db_password="";$db_database="football_db";
 $conn=new
PDO("mysql:host=$db_server;dbname=$db_database",$db_username, $db_password);  
 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
?>

1 个答案:

答案 0 :(得分:0)

你可以创建一个像add这样的新按钮,命名为update。

如果您的代码变得更大,请将其重定向到新页面以更好地处理代码。

在该页面上的

执行与上面相同的操作,只需将查询从SELECT更改为UPDATE。

这是您可以做的最简单的方法,您可以使用相同的表单避免使用DRY代码,并使用不同的查询进行更新。