这个php文件将通过单击其他文件上的按钮作为弹出窗口打开。我在这个文件中包含了2个按钮,一个用于UPDATE,另一个用于CANCEL。如果用户点击UPDATE数据将在数据库中更新。如果用户点击CANCEL按钮,我想自动关闭窗口。但是发生的事情是,如果用户点击CANCEL按钮,窗口正在关闭,但数据正在数据库中更新。我应该怎么做才能关闭窗口而不在数据库中更新数据? 感谢您的帮助。
`<html>
<head>
<link rel="stylesheet" type="text/css" href="cms_style.css">
</head>
<body>
<?php
$cid = $_GET['id'];
$uid = $_GET['uid'];
$con = mysql_connect("localhost", "root", "");
mysql_select_db("abcd",$con);
if($uid==1) {
updateRecord($cid);
} else if (isset($_GET['id']) ) {
$ResumeID = $_GET['id'];
$sql="SELECT * from data WHERE ResumeID=$ResumeID";
$result = mysql_query($sql);
$Row=mysql_fetch_row($result);
?>
<form align="center" action="update.php?id=<? echo "$Row[1]"?>&uid=1"
method="post">
<table align="center">
<input type="hidden" name="resumeid" value="<? echo "$Row[1]"?>">
<? echo "<tr> <td> Resume ID </td><td>$Row[1]</td> </tr>" ?>
<div align="center">
<tr><td> Name of the Candidate</td>
<td><input type="text" name="NameoftheCandidate" size="25" value="<? echo
"$Row[0]" ?>"> </td>
</tr>
<tr>
<td>TelephoneNo</td>
<td><input type="text" name="TelephoneNo" size="25" value="<? echo "$Row[2]"?
>">
</td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="Email" size="25" value="<? echo "$Row[3]"?>">
</td>
<tr>
<td></td>
<td align="center"><input type="submit" name="submitvalue" value="UPDATE" ></td>
<td align="center"><input type="submit" name="cancelvalue" value="CANCEL"
onClick="self.close()"></td>
</tr>
</div>
</table>
</form>
<?php
} // end of else if
function updateRecord($cid) {
$sql="UPDATE data SET
NameoftheCandidate=\"$_POST[NameoftheCandidate]\",
TelephoneNo='$_POST[TelephoneNo]',
Email='$_POST[Email]' WHERE ResumeID=$_GET[id]";
if(mysql_query($sql))
echo "<p>Record updated Successfully</p>";
else
echo "<p>Record update failed</p>";
} // end of update function
?>
</body>
</html>`
答案 0 :(得分:3)
将type =“submit”更改为“button”
<td align="center">
<input type="submit" name="submitvalue" value="UPDATE" >
</td>
<td align="center">
<input type="button" name="cancelvalue" value="CANCEL" onClick="self.close()">
</td>
答案 1 :(得分:2)
在致电return false;
后尝试添加self.close()
。或者,您可以将<input type="submit">
替换为<input type="button">
。
答案 2 :(得分:0)
这样的事情可行。
<?php
if (!empty($_POST['cancelvalue'])){
exit();
}
?>
按钮客户端不会停止脚本服务器端。
其他的,您无法使用 isset 来检查全局数组,如果传递任何值,则数组将返回true。您应该使用 empty 。