2016-06-07 168 views
0

我是一名vba开发人员,所以我对如何将记录ID解析为isset()感到困惑。 我在这里看过各种帖子,并尝试了很多东西,但记录不会删除。页面刷新。 isset必须失败。我尝试给名称&价值,但我使用的组合只是没有工作。php:点击按钮时删除记录

<?php 
session_start(); 
$user_mail = $_SESSION['username']; 
if ($user_mail) { 
    include 'database/db.php'; 
    if(isset($_GET['delete_id'])) { 
     $sql_query="DELETE FROM `job_request` WHERE job_request.job_id=".$_GET['delete_id']." AND job_request.Email='$user_mail'"; 
     mysql_query($sql_query); 
     header("Location: applied_jobs.php"); 
    } 
?> etc ... 

它以这种方式使用:

<?php 
$result = mysql_query("SELECT * FROM `jobs` INNER JOIN job_request ON job_request.job_id=jobs.ReqID where job_request.Email='$user_mail' ORDER BY job_request.Applied_Date DESC"); 
$n = mysql_num_rows($result); 
if ($n > 0) { 
while ($row = mysql_fetch_array($result)) { 
?> 
<div id="lb" class="col-md-12" > 
<h4 style="color:black;"><?php echo $row['Job_Title'] ?> 
<a href="applied_jobs.php?delete_id=<?php echo $row['job_id']; ?>" onclick="return confirm('Delete this record?');" data-placement="top" data-toggle="tooltip" title="Delete Record"> 
<button class="btn-danger btn-md pull-right" data-title="Delete"> <span class="glyphicon glyphicon-trash"></span></button></a> 
</h4> 

预先感谢任何见解上设置的job_id变量删除的记录

+2

你很容易受到[SQL注射攻击](http://bobby-tables.com),并且简单地假设查询将总是成功。最起码,你应该有'$ result = mysql_query(...)或者die(mysql_error())'这样的东西来告诉你如果/当某些东西爆炸时。您还可以**不**想要在常规URL上输入删除查询:您可能会删除所有这些记录:http://thedailywtf.com/articles/The_Spider_of_Doom –

+0

至少使用'(int)$ _ GET [ 'delete_id']'以避免你的一些问题。 –

+0

是的,我会将错误处理添加到代码中。我会查找你发布的链接 – PlumpyMa

回答

0

你可以改变

mysql_query($sql_query); 

mysql_query($sql_query) or die(mysql_error()); 

以使用mysql的查询来获取任何错误。

也许值不过去了: 变化:

<a href="applied_jobs.php?delete_id=<?php echo $row['job_id']; ?>" onclick="return confirm('Delete this record?');" data-placement="top" data-toggle="tooltip" title="Delete Record"> 
<button class="btn-danger btn-md pull-right" data-title="Delete"> <span class="glyphicon glyphicon-trash"></span></button></a> 

到:

<a href="applied_jobs.php?delete_id=<?php echo $row['job_id']; ?>" onclick="return confirm('Delete this record?');" data-placement="top" data-toggle="tooltip" title="Delete Record" class="btn-danger btn-md pull-right"> <span class="glyphicon glyphicon-trash"></span></a> 

删除按钮和应用类的标签

+0

但是,值'delete_id'是字母数字 - thx你的建议 – PlumpyMa