0

这次我非常非常失望。我浪费了我的一整天,我无法帮助我。这是问题所在:

我需要接受或删除待处理的作业。如果我接受,只有这样它才会在我的网站上发布。请看图片。在此处输入图像描述

在这里,我正在尝试使用此代码来处理此问题。首先,如果有人发布新工作,我会根据工作传递一个隐藏值=0。

<input type="hidden" name="pending" value=0/>

然后我将它存储在我的数据库中。

INSERT INTO job (Pending) VALUES ('$_POST[pending]');

然后我去图像(上图)页面接受或删除。

echo "<a href='accept.php?accept=1'>ACCEPT</a> Or ";
echo "<a href='accept.php?accept=0'>DELETE</a>";

接受 Pending 列后,将从 0 替换为 1,从而将其发布。或删除时间,作业将简单地从数据库中删除。

$accept=$_GET['accept'];
if($accept==1){
mysql_query("UPDATE job SET Pending='$accept'
WHERE ID='5'");
}
else{
mysql_query("DELETE FROM job WHERE ID='5'");
}

在“作业”表中,我使用了一个名为 ID 的主自动增量列。我把5作为ID。因此,此代码仅适用于 ID 为 5 的待处理作业。所以我的问题就在这里。如何将这 5 与动态变量交替?

如需更多帮助,请点击“待定工作”页面的代码;

$result1 = mysql_query("SELECT * FROM job ORDER BY ID DESC");
while($row1 = mysql_fetch_array($result1))
{
 $id=$row1['ID'];
 $cat=$row1['Category'];
 $title=$row1['Title'];
 $type=$row1['Type'];
 $desp=$row1['Description'];
 $salary=$row1['Salary'];
 $day=$row1['Day'];
 $month=$row1['Month'];
 $year=$row1['Year'];
 $info=$row1['Contact'];
 $pending=$row1['Pending'];

 $now = time();
 $last_date = strtotime("$year-$month-$day");
 $datediff = $last_date - $now;
 $day_left=ceil($datediff/(60*60*24));
 if($day_left>=0&&$pending==0){
echo "<div class=cat>Job field: $cat<br/></div>";
  echo "<div class=yel2>";
 echo "This is a <b>$type time</b> job and we are looking for <b>$title</b>. $desp<br/>";
if ($salary!=0) echo "Salary: $salary<br/>";
echo "Contact info: $info<br/>Last date: $day-$month-$year";
 if($day_left==0)
 echo "<br/><span class=ash><i>Today is the last day to apply</i><br/>";
else
 echo "<br/><span class=ash><i>$day_left day(s) left</i></span><br/>";
 echo "<span class=acc><a href='accept.php?accept=1'>ACCEPT</a><span> Or ";
 echo "<span class=del><a href='accept.php?accept=0'>DELETE</a></span>";
4

1 回答 1

2

只需将 id 与接受 url 一起传递。

echo "<span class=acc><a href='accept.php?id=$id&accept=1'>ACCEPT</a><span> Or ";

您可以使用在 accept.php 脚本中获取 id

$post_id = $_GET['id'];

代码几乎不需要改动

$accept = intval($_GET['accept']); // safe against sql-injections
$post_id = intval($_GET['id']);
if($accept==1){
mysql_query("UPDATE job SET Pending='$accept'
WHERE ID='$post_id'");
}
else{
mysql_query("DELETE FROM job WHERE ID='$post_id'");
}
于 2012-12-28T07:50:23.977 回答