【发布时间】:2020-10-21 13:11:59
【问题描述】:
我正在尝试为用户创建一个选项来编辑我使用 PHP 和 MySQL 创建的表中的信息。我设法创建了这个函数并且正在修改数据,唯一的问题是当我单击表的一条记录上的“编辑”按钮时,编辑屏幕总是显示表中的所有记录,而不是只显示数据我想修改,请问如何解决?
这是我的代码:
<?php
ini_set('default_charset','UTF-8');
$host="localhost";
$username="********";
$password="********";
$db_name="*********";
$con=mysqli_connect("$host", "$username", "$password", "$db_name")or die("cannot connect");
mysqli_set_charset($con,"utf8");
$sql = "SELECT `ID`, `carro`, `datasaida` , `horasaida` , `datachegada`, `horachegada`, `kminicial`, `kmfinal`, `destino`, `motorista` FROM `carro`";
$query = $con->query($sql);
while ($dados = $query->fetch_assoc()) {
$id = $dados["ID"];
$carro = $dados["carro"];
$datasaida = $dados["datasaida"];
$horasaida = $dados["horasaida"];
$datachegada = $dados["datachegada"];
$horachegada = $dados["horachegada"];
$kminicial = $dados["kminicial"];
$kmfinal = $dados["kmfinal"];
$destino = $dados["destino"];
$motorista = $dados["motorista"];
echo "
<form id=\"form1\" name=\"form1\" method=\"post\" action=\"salvar_edicao.php\">
ID: <input name=\"id\" type=\"text\" readonly=\"readonly\" id=\"id\" value=\"$id\" size=\"35\"/><br>
CARRO: <input name=\"carro\" type=\"text\" id=\"id\" value=\"$carro\" size=\"35\"/><br>
DATA DE SAIDA: <input name=\"datasaida\" type=\"text\" id=\"id\" value=\"$datasaida\" size=\"35\"/><br>
HORA DE SAIDA: <input name=\"horasaida\" type=\"text\" id=\"id\" value=\"$horasaida\" size=\"35\"/><br>
DATA DE CHEGADA: <input name=\"datachegada\" type=\"text\" id=\"id\" value=\"$datachegada\" size=\"35\"/><br>
HORA DE CHEGADA: <input name=\"horachegada\" type=\"text\" id=\"id\" value=\"$horachegada\" size=\"30\"/><br>
KM INICIAL: <input name=\"kminicial\" type=\"text\" id=\"id\" value=\"$kminicial\" size=\"35\"/><br>
KM FINAL: <input name=\"kmfinal\" type=\"text\" id=\"id\" value=\"$kmfinal\" size=\"35\"/><br>
DESTINO: <input name=\"destino\" type=\"text\" id=\"id\" value=\"$destino\" size=\"35\"/><br>
MOTORISTA: <input name=\"motorista\" type=\"text\" id=\"id\" value=\"$motorista\" size=\"35\"/><br>
<input type=\"submit\" onclick=\"return confirm('Deseja mesmo editar esse registro?');\" name=\"Submit\" value=\"SALVAR ALTERAÇÕES\" class=\"btnNew\"/>
</form>
";
}
?>
【问题讨论】:
-
提示:
LIMIT 1. -
提示:如果你有一个像
$x这样的字符串,并且你想将它用作参数,你可以使用f($x),不需要f("$x")。 PHP 不是 shell 脚本。 -
如果您不使用 PHP 输出所有 HTML,您的代码看起来会更干净。
-
你应该使用
ID来限制你的查询:WHERE ID = $id