如何更新数据库。我不会添加新记录。 数据与从数据库中检索的代码相同。我不知道怎么 嵌入第二个函数,从表单和更新数据库。 从数据库读取到表单工作
<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);
?>
答案 0 :(得分:0)
你可以创建一个像add这样的新按钮,命名为update。
如果您的代码变得更大,请将其重定向到新页面以更好地处理代码。
在该页面上的执行与上面相同的操作,只需将查询从SELECT更改为UPDATE。
这是您可以做的最简单的方法,您可以使用相同的表单避免使用DRY代码,并使用不同的查询进行更新。