2015-11-01 59 views
2

Update.php文件:删除不删除选定的职位,但其删除近期(newels)后加入

<?php ob_start(); 
session_start(); 


//declare the basic variables 
$servername = "localhost"; 
$username = "bilal"; 
$password = "super"; 
$dbname = "coursework"; 

//create connection 
$link = mysqli_connect($servername, $username, $password, $dbname); 


//check connection 
if($link->connect_error){ 
die ("connection failed: " . $link->connect_error); 
} 

//Security purpose, handiling escape string 
    // $crested_by = $_POST ['created_by']; 
    $title = $_POST['title']; 
    $catagory = $_POST['catagory']; 
    $contact = $_POST['contact']; 
    $comment = $_POST ['description']; 
    $ses = $_SESSION['email']; 
    $date = date('Y-m-d'); 
    $availability = $_POST ['availability']; 
    $price = $_POST ['price']; 
    $id = $_POST['wow']; 
// $created_by_id = $_SESSION['created_by_id']; 

// $username = $_SESSION['firstname']; 
if (isset($_POST['del'])){ 
    $deletequery=mysqli_query($link,"DELETE FROM new_post WHERE id='$id'"); 
    header ("Location: added_posts.php"); 
    } 

    else if(isset($_POST['update'])){ 

    $sql = "UPDATE new_post SET title='$title', contact='$contact',  availability='$availability', price='$price', comment='$comment' WHERE id='$id'"; 
if (mysqli_query($link, $sql)){ 
echo "awesoke"; 
    header("Location:added_posts.php"); 
    }else{ 
    echo "Error: Sign up Unsuccessfull"; 
} 
} 

$link->close(); 
?> 

这是我update.php文件我展示里面的idtextbox和做在那里id = the text field value。它正在删除,但最近添加的项目删除,如果我有3个职位id像(4,5,6)id删除6先,然后5然后4.我显示数据在自举卡。但是每个删除按钮都会删除最近添加的最近一个按钮。

+0

'$ id'的打印值删除前,请检查您是否正确传递ID值。 – sandeepsure

+0

什么是$ _POST ['哇]',它是如何得到的?你真的需要显示ID的内部文本框,它可以是一个隐藏的邮政领域,或者你可以通过url – danidee

+0

传递值,以及我在文本框中显示文章的ID,以确保它是正确的!和哇文本框的名称。所以我把它添加为一个帖子,并使其等于id。但仍然是删除最近的帖子。第一个第三然后如果我再次按下第二个,即使我想删除第一个,然后点击从第一个卡删除,然后删除第三个 – bilal

回答

2

所以你试图删除数据库中最新的记录?

你的问题是sql语句你有

"DELETE FROM new_post WHERE id='$id'" 

这是删除记录在new_post其中ID等于从您的形式张贴标识。

您必须考虑到表中的最新条目将具有最大的 ID

因此,使用这样的事情:

DELETE FROM new_post ORDER BY id DESC LIMIT 1 

尝试2:

要删除基于ID的特定行?

我建议你使用prepared statements安全

首先试试这个:

$stmt = $link->prepare("DELETE FROM new_post WHERE id= ?"); 
$stmt->bind_param('i', $_POST['wow']); // can also use $id 
$stmt->execute(); 
$stmt->close(); 
+0

否否否!!我只是想删除特定的记录。就像我已经制作了卡片,在所有卡片中都有细节,每张卡片都有删除按钮。但如果我按任何卡删除最近的帖子删除,然后如果我按agaian第二次最近得到删除。 – bilal

+0

好吧,您需要确保您的帖子变量正确分配,回显它们,echo $ id – 2015-11-01 14:31:55

+0

echo是完全正确的!我显示id ina文本字段,然后我在查询中使用的文本字段的名称,如其中id =“文本字段的名称” – bilal