gpt4 book ai didi

php - 需要在 Bootstrap 中使用模式编辑表格的一行

转载 作者:行者123 更新时间:2023-11-29 23:42:20 24 4
gpt4 key购买 nike

我有一个网站,管理员在登录后可以编辑他的个人资料中显示的“设施”列表。我使用下面的代码创建了一个简单的表格来显示便利设施。

<?php
$con=mysqli_connect("abc.com","abc","abc","abc");// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM amenities");
echo "<table class='table table-striped table-bordered table-hover'>
<thead>
<tr>
<th>amenities</th>
<th>edit</th>
</tr>
</thead>";
while($row = mysqli_fetch_array($result))
{
echo "<tbody data-link='row' class='rowlink'>";
echo "<tr>";
echo "<td>" . $row['amenities'] . "</td>";
echo "<td> <a href='#edit' data-toggle='modal'> edit </a> </td>";
echo "</tr>";
echo "</tbody>";
}
echo "</table>";
mysqli_close($con);
?>

除了列表之外,我还尝试在编辑按钮后面合并一个模式。显示表格的页面 View 是:
id    amenities    edit
1 amenities1 edit
2 amenities2 edit

当管理员点击特定的编辑按钮(例如:位于便利设施1前面的编辑​​按钮)时,将显示一个模式,允许管理员仅编辑该便利设施(在我们的例子中是便利设施1)

用于模态的代码是
<div class = "modal fade" id="edit" role="dialog">
<div class = "modal-dialog">
<div class = "modal-content">
<div class = "modal-header">
<h4> Edit Page </h4>
</div>

<div class="modal-body">
<form role="form" action="edit_amenities.php" method="post">
<div class="form-group">
<label for="exampleInputEmail1">Name of Amenities</label>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Email" name="amenities">
</div>

<input name="submit" type="submit" value=" Save ">
</form>
</div>

<div class="modal-footer">
<a class="btn btn-primary" data-dismiss="modal"> Close </a>
</div>
</div>
</div>
</div>

在表单后端 (edit_amenities.php) 工作的代码是:
<?php
include('admin_session.php');

$con=mysqli_connect("abc","abc","abc","abc");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$password = mysqli_real_escape_string($con, $_POST['amenities']);

$sql = "UPDATE amenities SET amenities='".$amenities."' where id='".$id."'";

if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
header("Location: admin_amenities.php");
exit;

mysqli_close($con);
?>

数据库的 View 是
id   amenities
1 q
2 a

我希望的是,当打开模式时,管理员可以输入一个新名称并替换旧名称并保存在数据库中。但是我无法实现它。如果有人可以帮助我,将不胜感激

最佳答案

你为什么不使用这样的东西,只是一个例子:

<div class="modal-body">
<form action="edit_amenities.php" method="post">
<div class="form-group">
<label for="exampleInputEmail1">Name of Amenities</label>
<input type="text" class="form-control" name="update[amenities]">
</div>

<input name="submit" type="submit" value=" Save ">
</form>
</div>

和 PHP:
if ($this->getRequest()->isPost()) {
$post = $this->getRequest()->getPost();
}

$amenitie = $this->amenitie->fetchRow(
$this->amenitie->select()->where('id = ?', $this->params['id'])
);
if ($amenitie) {
foreach ($post['update'] as $key => $val) {
$amenitie->{$key} = $val;
}

$amenitie->save();
}

编辑:在你的例子中:
$sql = "UPDATE amenities SET amenities='".$amenities."'";

使用 WHERE,并在输入字段中,提供要更新的设施的 ID。

关于php - 需要在 Bootstrap 中使用模式编辑表格的一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26097732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com