给出的代码是php中crud操作的演示。
基本的html表单有三个字段 NAME
, EMAIl
, DEPT
,以及“提交”按钮。
基本操作是工作良好的添加删除和表单提交,但当我想更新它给出的数据
未定义索引:第13行的c:\xampp\htdocs\test\edit.php中的id。
但是当我把edit.php文件中的查询id改为name时,它可以正常工作,但是当把edit.php文件中的查询的名称改为id时它就不工作了表名是 crud
. 以及 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);
?>
1条答案
按热度按时间zed5wv101#
改变这个
到