2013-04-20 76 views
0

我認爲這是一個簡單的問題。我是jQuery的新手。我正在嘗試製作腳本,以便在點擊圖片時,ajax將調用將更新mySQL數據庫的php文件。

我的腳本:通過ajax調用php mySQL更新

<script> 
function update(){  
     var request = $.ajax({ 
     url: "insert.php", 
     type: "GET",    
     dataType: "html" 
    }); 

    request.done(function(msg) { 
     $("div.recen").html(msg);   
    }); 

    request.fail(function(jqXHR, textStatus) { 
     alert("Request failed: " + textStatus); 
    }); 
}; 
</script> 


HTML:

<div class="recen"> 
      <img src="./smile.png" class="pic" onclik="update()" /> 
</div> 


PHP文件:

<?php 
$var='123'; 

$url='localhost'; 
$user='root'; 
$password=''; 

$sql=mysql_connect($url,$user,$password); 
mysql_select_db('database'); 

$query="UPDATE table SET var='".$var."';"; 
if(mysql_query($query)) echo '<b>Done.</b>'; 
else echo mysql_error(); 
?> 

出於某種原因,有絕對沒有迴應。數據庫保持不變,html頁面不會改變。代碼有什麼問題,或者我不能通過ajax更新數據庫?

+0

只需要注意一下,你可以使用$ query =「UPDATE table SET var ='$ var'」;因爲你不需要轉義引號,因爲「字符串意味着它可以期望變量在裏面,一個以'開始'的字符串不會尋找變量 – 2013-04-20 19:39:38

回答

1

我認爲錯的財產以後在查詢

試試這個

$query="UPDATE table SET var='".$var."' "; 
              ^^----remove this `;` 

改變這種

if(mysql_query($query)) echo '<b>Done.</b>'; 
else echo mysql_error(); 

if(mysql_query($query)){ echo '<b>Done.</b>';} 
else {echo mysql_error();} 

存在的javascrip沒有onclik t改爲使用onClick

+0

哇,謝謝,我感覺它是這樣的,我很慚愧。 .. – MrPiski 2013-04-20 20:16:13

0

您在HTML代碼中有錯別字。你的屬性應該是onclick而不是onclik

<img src="./smile.png" class="pic" onclick="update()" />