2012-09-04 100 views
-2

在我的頁面頂部,我連接到我的數據庫,連接沒有問題,因爲我可以很容易地從表中顯示數據。現在我在頁面的末尾有一個按鈕,該按鈕應該是編輯此表中的數據。但是,數據沒有被更新?我不知道爲什麼不,這段代碼有什麼問題嗎?謝謝! (順便說一句:回波顯示出來就好了!)我的SQL查詢有什麼問題,因爲它不起作用?

$sql="UPDATE profiles SET 
    bedrijfsslogan = ".$bedrijfsslogan.", 
    bedrijfsomschrijving = ".$bedrijfsomschrijving.", 
    bedrijfsspecialiteiten = ".$bedrijfsspecialiteiten.", 
    bedrijfsgeschiedenis = ".$bedrijfsgeschiedenis.", 
    openingstijden = ".$openingstijden.", 
    telefoonnummer = ".$telefoonnummer.", 
    fax = ".$fax.", 
    email = ".$email.", 
    website = ".$website.", 
    twitter = ".$twitter.", 
    facebook = ".$facebook.", 
    youtube = ".$youtube.", 
    linkedin = ".$linkedin.", 
     subrubrieken = ".$subrubriekenresult.", 
    merken = ".$merkenresult.", 
    brancheverenigingen = ".$brancheverenigingenresult." 

     WHERE kvk = ".$kvkvariable.""; 


mysql_query($sql); 


echo "<font color=\"red\" size=\"3\"><br />Profiel succesvol bijgewerkt!<br /></font>"; 
+0

什麼是th錯誤? – Wearybands

+0

@JakubTruneček'mysql_query' ...? –

+3

'bedrijfsslogan ='「。$ bedrijfsslogan。」'''等 –

回答

7

我願意打賭,至少其中的一些變量是字符串 - 你需要在引號中封裝這樣的:

$sql="UPDATE profiles SET 
bedrijfsslogan = '".$bedrijfsslogan."', 
bedrijfsomschrijving = ".$bedrijfsomschrijving.".... 

假設第一個變量是您嘗試保存的字符串。

關於這一點,它很可能是你的代碼的一個偉大的事情,如果你沒有移動到PDO - 它是更安全,更安全,你可以做更多的事吧。

+0

謝謝,這個伎倆! – user1555076

+0

@Downvoter,有什麼不對嗎? – hims056

2

我覺得現在的問題是,字符串必須在SQL語句中引用... 像...

fax = '".$fax."', 
    email = '".$email."', 

ECC ECC

+0

正確,那是問題所在!謝謝! – user1555076

0

相反的mysql_query($sql);,試試這個:

if (!mysql_query($sql)) { 
    //there was an error 
    echo mysql_error(); 
} else { 
    //everything went ok. Show success message. 
    echo "Update successful."; 
} 

這應該輸出MySQL返回的錯誤。 它通常指出你是什麼問題。

+0

單個逗號是問題,無論如何感謝您的幫助! – user1555076

+0

沒問題。儘管只有在查詢正確運行時才顯示成功消息是一個好主意。 –

0
Always Use the **mysql_error()** function to track down the error 


$sql="UPDATE profiles SET 
    bedrijfsslogan = ".$bedrijfsslogan.", 
    bedrijfsomschrijving = ".$bedrijfsomschrijving.", 
    bedrijfsspecialiteiten = ".$bedrijfsspecialiteiten.", 
    bedrijfsgeschiedenis = ".$bedrijfsgeschiedenis.", 
    openingstijden = ".$openingstijden.", 
    telefoonnummer = ".$telefoonnummer.", 
    fax = ".$fax.", 
    email = ".$email.", 
    website = ".$website.", 
    twitter = ".$twitter.", 
    facebook = ".$facebook.", 
    youtube = ".$youtube.", 
    linkedin = ".$linkedin.", 
     subrubrieken = ".$subrubriekenresult.", 
    merken = ".$merkenresult.", 
    brancheverenigingen = ".$brancheverenigingenresult." 

     WHERE kvk = ".$kvkvariable.""; 




mysql_query($sql) or die(mysql_error()); 

This will tell what is the error in your query :)