我想說的是,當(dāng)我從上面的代碼中單擊更新列表按鈕時(shí),我希望if (isset($_POST['UpdateBtn']))能夠工作,但是每次我單擊時(shí)都沒有任何反應(yīng)
if (isset($_POST['UpdateBtn'])){
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$username = $_POST['username'];
$password = $_POST['password'];
$type = $_POST['type'];
updatelist($pdo,$id,$fname,$lname,$username,$password,$type);
}
我試著這樣做,看看它是否能響應(yīng)hello world,但仍然不起作用
if (isset($_POST['UpdateBtn'])){
echo "hello world";
}
這是我保存在其他php文件中的函數(shù)的代碼,其余的代碼保存在相同的文件中
function updatelist($pdo,$id,$fname,$lname,$username,$password,$type){
try {
$sql ='UPDATE users set fname=:fname, lname=:lname,username=:username,password=:password,type=:type WHERE id=:id';
$statement = $pdo->prepare($sql);
$statement->bindValue(':id',$id);
$statement->bindValue(':fname',$fname);
$statement->bindValue(':lname',$lname);
$statement->bindValue(':username',$username);
$statement->bindValue(':password',$password);
$statement->bindValue(':type',$type);
$statement->execute();
echo '<script>alert(" Order successfully updated")</script>';
echo '<script>window.location="page2.php"</script>';
}catch(Exception $e) {
echo 'Message: ' .$e->getMessage();
$pdo = null;
$sql = null;
}
}
這是我可以插入輸入的代碼
<div class="row inputRow">
<div class="row inputRow">
<div class="col-2">
<h5> first name<h5>
<input type="text" class="form-control" placeholder="fname" name="fname" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $fname;} ?>">
</div>
<div class="col-2">
<h5> last name<h5>
<input type="text" class="form-control" placeholder="lname" name="lname" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $lname;} ?>">
</div>
<div class="col-2">
<h5> username<h5>
<input type="text" class="form-control" placeholder="username" name="username" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $username;} ?>">
</div>
<div class="col-2">
<h5> password<h5>
<input type="text" class="form-control" placeholder="password" name="password" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $password;} ?>">
</div>
<div class="col-6">
<h5> User type<h5>
<select class="form-select" aria-label="Default select example" name="type">
<option value="administrator" <?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE' && $id=='administrator'){ echo 'selected';} ?>>administrator</option>
<option value="customer" <?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE' && $id =='customer'){ echo 'selected';} ?>>customer</option>
</select>
</div>
</div>
我在之前的問題中已經(jīng)問過這個(gè)問題了,但是我想我沒有正確地解釋發(fā)生了什么,我在我的其他項(xiàng)目和工作中也使用了這個(gè)方法,我不知道為什么在這里它不是php中的新東西
您需要使用method = & quot在表單標(biāo)記中添加按鈕和其他輸入元素。帖子& quot,那么您可以在$_POST中收到按鈕點(diǎn)擊響應(yīng)。
更新后的代碼將如下所示。
<form action="" method="post" >
<div class="row inputRow">
<div class="col-2">
<h5> first name<h5>
<input type="text" class="form-control" placeholder="fname" name="fname" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $fname;} ?>">
</div>
<div class="col-2">
<h5> last name<h5>
<input type="text" class="form-control" placeholder="lname" name="lname" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $lname;} ?>">
</div>
<div class="col-2">
<h5> username<h5>
<input type="text" class="form-control" placeholder="username" name="username" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $username;} ?>">
</div>
<div class="col-2">
<h5> password<h5>
<input type="text" class="form-control" placeholder="password" name="password" value="<?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){ echo $password;} ?>">
</div>
<div class="col-6">
<h5> User type<h5>
<select class="form-select" aria-label="Default select example" name="type">
<option value="administrator" <?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE' && $id=='administrator'){ echo 'selected';} ?>>administrator</option>
<option value="customer" <?php if (isset($_GET['trn']) && $_GET['trn']=='UPDATE' && $id =='customer'){ echo 'selected';} ?>>customer</option>
</select>
</div>
<?php
if (isset($_GET['trn']) && $_GET['trn']=='UPDATE'){
echo '<button type="submit" class="btn btn-primary addOrder" name="UpdateBtn">Update list</button>';
}else{
echo '<button type="submit" class="btn btn-primary addOrder" name="AddOrder">Add list</button>';
}
?>
</div>
</form>