2013-01-01 49 views
1

這樣做是從「批准」字段的值爲「0」的數據庫中獲取數據。顯示錶單。現在我們要做的是在點擊「批准」按鈕時將'批准'字段的值更新爲'1'。我認爲IF條件存在一些問題或某些問題,不確定。連接到數據庫沒有問題。或者我需要關閉數據庫連接或提交或更新發生,不知道。謝謝您的幫助。更新表單提交中的數據庫字段 - PHP

require("dbconn.php"); 
// get the form data and store it in the database 
// show database data 
$query="SELECT * FROM page where approve=0"; 
$result=mysql_query($query); 

if ($result) 
{ 
    print "<b>Approval pending for below listings.</b><br><br>"; 
    while($row = mysql_fetch_array($result)) 
    { 
     echo '<form name="submit_form" action="" method="post">'; 

     $page_url = $row['page_url']; 
     $contact_number = $row['contact_number']; 
     $description = $row['description']; 
     $category = $row['category']; 
     $address = $row['address']; 
     $business_name = $row['business_name']; 

     echo "<input type=\"text\" name=\"business_link\" value=\"$page_url\" readonly><br/>"; 
     echo "<input type=\"text\" name=\"contact_number\" value=\"$contact_number\" readonly><br/>"; 
     echo "<input type=\"text\" name=\"description\" value=\"$description\" readonly><br/>"; 
     echo "enter code here`<input type=\"text\" name=\"category\" value=\"$category\" readonly><br/>"; 
     echo "<input type=\"text\" name=\"address\" value=\"$address\" readonly><br/>"; 
     echo "<input type=\"text\" name=\"business_name\" value=\"$business_name\" readonly><br/>"; 
     echo "<input type=\"Submit\" Value=\"Approve\" name=\"submit\"/>"; 
     echo "</form>"; 
     echo "<hr><br>"; 
     if($_POST['submit_form'] == "submit") 
     { 
       mysql_query("UPDATE page SET approve='1' WHERE business_name='$business_name' AND contact_number='$contact_number' AND page_url='$page_url' AND description='$description' AND address='$address' AND category='$category'"); 
       echo "Thank you!"; 
     } 
    } 
} 
else 
{ 
    print mysql_error(); 
} 
+0

你確定它正在查詢嗎?它是否迴應了「謝謝」?如果是這樣,請嘗試回顯查詢本身並在phpMyAdmin或SQL工作臺中手動運行它。這將幫助您識別查詢中的錯誤。 – Apropos

+0

從該表單看來,您並未提交任何名稱爲「submit_form」的東西。這是你的表單的名稱,但這不會作爲後期變種。 – Apropos

回答

1

您正在檢查「submit_form」,但您應該檢查您的「提交」按鈕中的「提交」。

+0

應該加上'submit'的值爲「Approve」,而不是「submit」。 – Apropos

0

使用

if(isset($_POST['submit_button_name'])) 
0

嘗試使用PHP代碼isset($_POST['submit'])和檢查按鈕是否被提交或not.Also刪除<input type="Submit"......><input type="submit"......> .Echo的SQL查詢,並檢查是否所有值都在查詢中來。

1

變化: -

if($_POST['submit_form'] == "submit") 

到以下幾點: -

if(isset($_POST['submit']) && $_POST['submit'] == "Approve") 

此外,你應該把上面的代碼後, 「規定(」 dbconn.php 「);」,像以下內容: -

require("dbconn.php"); 
if(isset($_POST['submit']) && $_POST['submit'] == "Approve"){ 
    // update query here 
    // show notification 
    // you can show form too 
}else{ 
    // display the form 
} 
+0

謝謝。這裏有一個問題,假設有兩種形式,所以兩個批准按鈕。當我點擊第一個按鈕時,多行被更新,我不想要。我一次只需要一個。 我想通過使用一些標誌或類似的東西來找出解決方案。如果有任何機構可以幫助這一點,那麼這將有很大的幫助。 請參閱上述表格。謝謝。 – maddy2012