未定义的索引:第13行C:\xampp\htdocs\test\edit.php中的id
给出的代码是PHP中crud操作的演示 基本HTML表单有三个字段未定义的索引:第13行C:\xampp\htdocs\test\edit.php中的id,php,mysql,Php,Mysql,给出的代码是PHP中crud操作的演示 基本HTML表单有三个字段名称,电子邮件,部门,以及一个提交按钮 基本操作可以很好地进行添加、删除和表单提交,但是当我想更新它提供的数据时 未定义索引:第13行C:\xampp\htdocs\test\edit.php中的id 但是,当我将edit.php文件id中的查询更改为name时,它可以正常工作,但当在edit.php文件中将我的查询中的名称更改为id时,它不起作用 表名为crud。而id是表中的主键。id是自动递增的。 我不明白为什么它是工作与名
名称
,电子邮件
,部门
,以及一个提交按钮
基本操作可以很好地进行添加、删除和表单提交,但是当我想更新它提供的数据时
未定义索引:第13行C:\xampp\htdocs\test\edit.php中的id
但是,当我将edit.php文件id中的查询更改为name时,它可以正常工作,但当在edit.php文件中将我的查询中的名称更改为id时,它不起作用
表名为crud
。而id
是表中的主键。id是自动递增的。
我不明白为什么它是工作与名称,而不是工作与id文件
<html>
<head>
<title>CRUD</title>
</head>
<style type="text/css">
form{
text-align: center;
margin-top:50px;
font-family:serif;
color: grey;
}
input{
margin:10px;
}
</style>
<body>
<form action="submit.php" method="POST">
ID:<input type="text" name="id" style="width:200px"; disabled required placeholder="Autogenrated">
<br>
Name:<input type="text" name="name" style="width:200px";required><br>
email:<input type="email" name="email" style="width:200px";required><br>
Dept:<input type="text" name="dept" style="width:200px"; required><br>
<button type="submit" name="submit" style="width:80px";>Submit</button>
</form>
</div>
</body>
</html>
<?php
include_once('db.php');
if (isset($_GET['edit'])){
$id=$_GET['edit'];
$sql=$conn->query("select * from crud where id=$id");
while($row=$sql->fetch_array()){
$name=$row['name'];
$email=$row['email'];
$dept=$row['dept'];
}
}
if (isset($_POST['update'])){
$id=$_POST['id'];
echo $id ;
}
?>
<form action="" method="POST">
ID:<input type="text" name="id" value="<?php echo $id ?>" style="width:200px"; disabled required placeholder="Autogenrated" >
<br>
Name:<input type="text" name="name" value="<?php echo $name ?>" style="width:200px";required><br>
email:<input type="email" name="email" value="<?php echo $email ?>" style="width:200px";required><br>
Dept:<input type="text" name="dept" value="<?php echo $dept ?>" style="width:200px"; required><br>
<button type="submit" name="update" style="width:80px";>Update</button>
</form>
<?php
include_once('db.php');
if (isset($_GET['del'])) {
$id=$_GET['del'];
$sql="delete from crud where id='$id'";
mysqli_query($conn,$sql);
}
header('Location:display.php');
?>
<?php
include_once('db.php');
$sql="select * from crud";
$result=mysqli_query($conn,$sql);
if(mysqli_num_rows($result)>0){
while ($row=mysqli_fetch_assoc($result)) {
echo "--Name:".$row["name"]."--Email:".$row["email"]." "."--dept:".$row["dept"]."";
echo "<br>";
echo '<td><a href="edit.php?edit=' . $row['id'] . '">Edit</a></td>';
echo '<td><a href="delete.php?del=' . $row['id'] . '">Delete</a></td>';
echo "<br>";
echo '<td><a href="index.php?">add</a></td>';echo "<br>";
}
}
?>
<?php
$hostname="localhost";
$user="root";
$pass="";
$dbname="test";
$conn=mysqli_connect($hostname,$user,$pass,$dbname);
?>
积垢
形式{
文本对齐:居中;
边缘顶部:50px;
字体系列:衬线;
颜色:灰色;
}
输入{
利润率:10px;
}
身份证件:
名称:
电子邮件:
部门:
提交
ID:更改此选项
if (isset($_POST['update'])){
$id=$_POST['id'];
echo $id ;
}
到
您的方法是POST not GET,isset的名称是edit而不是UPDATE,但它将如何使用名称而不是id
if (isset($_POST['update'],$_POST['id'])){
$id=$_POST['id'];
echo $id ;
}