2012-02-01 54 views
1
if(isset($_POST['admin_email'])) 
    { 
     $conn= mysql_connect("localhost","root","",""); 
    mysql_select_db("qasite" ,$conn) or die(mysql_error()); 


$email=mysql_escape_string($_POST['admin_email']); 

    mysql_query(" UPDATE admin_details 
       SET email='$email' 
       WHERE admin_id=1 
      ") or trigger_error(mysql_error(),E_USER_ERROR); 

    echo 'Update was successful'; 
} 

將出現最後的更新統計信息,但數據庫中不顯示任何記錄。默認情況下,我將admin_id設置爲1,並且不發生更新。這是爲什麼?更新聲明失敗並且未生成錯誤

+0

@Dmitri做你的表「admin_details」包含任何數據 – 2012-02-01 16:46:24

+0

有一個要啓動的記錄? – 2012-02-01 16:46:50

+0

好,一個字段設置爲1..and另一個記錄是空的缺省值。我更新了2個默認值。它仍然does not工作 – 2012-02-01 16:47:43

回答

2

,但沒有記錄顯示在數據庫中。

只能在存在的記錄上使用UPDATE。如果沒有記錄WHERE admin_id = 1,查詢將不會更新不存在的行。

你可以使用INSERT並與ON DUPLICATE KEY UPDATE工作。 (那麼電子郵件應該是一個UNIQUE索引)。

+0

好的謝謝。你排序我的問題。它現在有效 – 2012-02-01 16:51:17

0

您可以更改trigger_errordie(mysql_error()),看看它是否效果更好。

+0

它不事關,helk – 2012-02-01 16:45:54

+0

$康恩=的mysql_connect( 「localhost」 的 「根」, 「」, 「」);到$ conn = mysql_connect(「localhost」,「root」,「」)? – 2012-02-01 16:47:43

+0

你檢查了PHP日誌文件嗎? – 2012-02-01 16:50:24