2016-06-01 70 views
-2

以下PHP的onclick行動是我的代碼,我已經使用,一個按鈕

if ($status=='Pending'){ 
    echo '<td>'.'<a href="leave_request.php?leave_id='.$id1.'"><input type="button" name="submit" class="btn btn-success" value="Approve" "></button></a>'.'</td>' 

    if(isset($_POST['submit'])){ 
     $id2=$_GET['leave_id']; 
     $result= "UPDATE emp_leaves SET approval_status='Accepted' WHERE leave_id='$id2'"; 
     $query=mysql_query($result); 
    } 
} 

當用戶單擊接受按鈕,URL將獲得的點擊leave_request leave_id和重新載入頁面本身。我想在重新加載頁面時將已識別的leave_id的leave_status列更新爲「已接受」。我該怎麼做。

+0

你能更具體嗎?我真的不明白你想做什麼。進一步: '。'是無用的,可以刪除。 '​​ JRsz

+3

請勿使用[mysql_'數據庫擴展名](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in - PHP 已棄用(在PHP7中永遠無法使用)特別是如果您只是學習PHP,請花些精力學習'PDO'數據庫擴展。 [從這裏開始](http://php.net/manual/en/book.pdo.php)它非常容易 – RiggsFolly

+1

你的HTML中是否有'

'標籤。我認爲你正在通過點擊一個「」錨標記來提交表單。他們是獨立的概念和不同的工作! – RiggsFolly

回答

1

嗨請試試這個。

leave_request.php 

<?php 
if ($status=='Pending'){ 
    echo '<a href="leave_request.php?leave_id='.$id1.'"><input type="button" name="submit" class="btn btn-success" value="Approve" "></button></a>';  
} 

    if(isset($_GET['leave_id'])){ 
     $id2=$_GET['leave_id']; 
     $result= "UPDATE emp_leaves SET approval_status='Accepted' WHERE leave_id='$id2'"; 
     $query=mysql_query($result); 
    } 
+0

這裏會有什麼回聲呢? –

+0

@Ravi Hirani它只是爲了檢查我現在編輯。感謝指點:) – user1234

+0

歡迎:)您應該在您的答案中添加說明。你做出改變的地方和你做出的其他回答有什麼不同。 –

2

您在查詢字符串中傳遞值,所以$ _POST不起作用。你需要使用$ _GET或$ _REQUEST。

改變你的條件是這樣的。

if(isset($_GET['leave_id'])){

這可能會解決你的問題。