【发布时间】:2014-10-07 02:30:28
【问题描述】:
我正在为客户做一个简单的项目,但我无法在 mysql 中编辑和更新数据。这是我从编辑提交表单传递的代码:
updateinfo.php
<?php
$con = mysqli_connect("localhost", "user", "password", "db");
if (mysqli_connect_errno()){
echo "Failed to connect to MySql: " . mysqli_connect_error();
}
$id = $row['id'];
$fname = $row['firstName'];
$sql = "UPDATE `db`.`client_information` SET `firstName` = '$fname' WHERE `client_information`.`id` = '$id'";
mysqli_query($con, $sql);
echo "Updated!";
mysqli_close($con);
?>
clientedit.php
<?php
$con = mysqli_connect("localhost", "user", "password", "db");
if (mysqli_connect_errno()){
echo "Failed to connect to MySql: " . mysql_connect_error();
}
$id=$_GET['id'];
$result = mysqli_query($con, "SELECT * FROM `client_information` WHERE id='$id'");
while ($row = mysqli_fetch_array($result)){
$id = $row['id'];
$fname = $row['firstName'];
}
mysqli_close($con);
?>
<?php include 'header.php';?>
<form role="form" action="updateinfo.php" method="post">
<div class="col-md-4">
<fieldset disabled>
<div class="form-group">
<label for="id">ID</label>
<input type="text" value="<?php echo $id;?>" class="form-control" id="id">
</div>
</fieldset>
<div class="form-group">
<label for="fname">First Name</label>
<input type="text" value="<?php echo $fname;?>" class="form-control" id="fname">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</div>
</form>
<?php include 'footer.php';?>
提前感谢您的帮助!
更新
更改变量后,当我通过表单(clientedit.php)传递信息时,updateinfo.php 用新信息更新表。但是,它只有在我说:“SELECT * FROM client_information WHERE id ='31' 时才有效。如果我将其更改为:“SELECT * FROM client_information WHERE id ='$id'”,然后它完全失败了。我知道我不是“动态地”跨文件连接 id。
【问题讨论】:
-
您需要遍历初始查询才能获取行。
-
您遇到了什么问题?你需要更具体。有没有错误?只是不更新吗?
-
为我的问题添加了更多内容。 @Arif_suhail_123 我不确定是否有任何东西通过表单。
-
@Nathan 我不确定是否有任何东西通过或如何检查。帮助? :)
-
@Fred-ii- 我在表单中循环。