我有一个 PHP 生成的 HTML 表,它从 MySQL 数据库加载数据,在这个表中有一个按钮用于编辑一些信息...当按下该按钮时,它会将用户发送到另一个带有文本字段的页面,一个按钮。
用户可以插入新文本,并通过按下按钮将新信息存储在数据库中,用新信息更改旧信息......
但是当我点击按钮提交新信息时,出现以下错误:
Notice: Undefined index: ident in /...patch.../upload2.php on line 11
我做错了什么? (我是 PHP 新手)
这是我的代码:
Resposta.php
<?php
ini_set('default_charset','UTF-8');
$con=mysqli_connect(“*******”,”*******”,”*******”,”*******”);
mysqli_set_charset($con,"utf8");
if (mysqli_connect_errno($con))
{
echo '{"query_result":"ERROR"}';
}
$emp_id = $_GET['id'];
$result = mysqli_query($con,"SELECT * FROM prefeitura WHERE id = $emp_id") ;
while($row = mysqli_fetch_array($result))
{
if($row['ID']) {
echo '<p><b>ID: </b>'. $row['ID'] .'';
}
if($row['nome']) {
echo '<p><b>SOLICITANTE: </b>'. $row['nome'] .'';
}
if($row['rua']) {
echo '<p><b>RUA: </b>'. $row['rua'] .'';
}
if($row['bairro']) {
echo '<p><b>BAIRRO: </b>'. $row['bairro'] .'</p>';
}
if($row['problema']) {
echo '<p><b>PROBLEMA: </b>'. $row['problema'] .'';
}
echo '<br>';
if($row['solucionado']) {
echo '<br><p><b>SITUAÇÃO: </b>'. $row['solucionado'] .'';
}
}
echo '<br><br><form enctype="multipart/form-data" action="upload2.php" method="post">';
echo '<br><input type="text" class="input-text text-area" name="resposta" id="resposta" placeholder="Escreva a resposta" required/>';
echo '<input type="submit" class="input-btn" ident="' .$row['ID']. '" value="Enviar Resposta" />';
mysqli_close($con);
?>
upload2.php
<?php
ini_set('display_errors', true); error_reporting(E_ALL);
ini_set('default_charset','UTF-8');
$con=mysqli_connect(“*******”,”*******”,”*******”,”*******”);
mysqli_set_charset($con,"utf8");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$emp_id = $_POST['ident'];
$resposta = nl2br(htmlentities($_POST['resposta'], ENT_QUOTES, 'UTF-8'));
$result = mysqli_query($con,"UPDATE prefeitura SET solucionado = '$resposta' WHERE ID = '$emp_id';");
header('Location: mensagem_enviada.html');
?>
最佳答案
我设法解决了问题:按下按钮时没有发送 ID 值...
这是一段有效的代码:
$mudaid = $_GET['id'];
echo <<<HTML
<form enctype="multipart/form-data" action="upload2.php" method="post">
<br><textarea rows="10" cols="70" name="resposta" id="resposta"></textarea>
<br><button type="submit" name="ident" value="$mudaid">Enviar resposta</button>
HTML;
echo '</center>';
关于php - 无法使用 PHP/HTML 中的表单更改 DB 上的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48552462/