2015-11-01 32 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