2014-04-25 90 views
1

一點自私的問題,但我真的在一般的Ajax中掙扎,所以我需要一些幫助。所以基本上我試圖更新和SQL數據庫使用'onblur'功能。繼承人我的代碼:此刻當我點擊輸入框的SQL數據庫沒有更新的index.php爲什麼我的表單沒有提交使用ajax

function saveStatus(){ 
var status =document.getElementById("statusForm").value; 
$.ajax({ 
       url: 'saveStatus.php', 
       type: 'post', 
       data: 'feed_id=' + status, 
       success: function(result){ 
       } 
       }  
    <form id="statusUpdate" action = "whosout.php" method="post"> 
     <input type="text" id="statusForm" onblur="saveStatus()" 
     placeholder="<?php if($status!=null){ echo '&lsquo;'.$status.'&rsquo;';} 
     else { echo 'Enter your status here.';}?>"> 
     </form> 

和代碼

代碼上saveStatus.php

<? 
    require 'core.php'; 
    require 'connect.php'; 

     $status = $_POST['feed_id']; 
     $idPerson = $_SESSION['user_id']; 
     $query = "UPDATE person SET status = '".mysql_real_escape_string($status)."' 
    WHERE idPerson = '$idPerson'"; 
    $query_run = mysql_query($query); 
    ?> 

。任何幫助將是偉大的!

+1

請嘗試縮小錯誤。 –

+1

檢查瀏覽器控制檯中的錯誤。 –

回答

5

答:

  1. 你必須devide腳本和HTML輸出
  2. 你忘了);。你必須關閉$.ajax塊。
  3. 您錯過}關閉功能saveStatus()

代碼:

<script> 
function saveStatus(){ 
    var status =document.getElementById("statusForm").value; 
    $.ajax({ 
     url: 'saveStatus.php', 
     type: 'post', 
     data: 'feed_id=' + status, 
     success: function(result){ 

     } 
    }); // <-- Also, you forget `);` here 
} // <-- Also, you foget closing `}` here 
</script> 

<form id="statusUpdate" action = "whosout.php" method="post"> 
<input type="text" id="statusForm" onblur="saveStatus()" 
placeholder="<?php if($status!=null){ echo '&lsquo;'.$status.'&rsquo;';} 
else { echo 'Enter your status here.';}?>"> 
</form> 

不是錯誤,但建議:

此外,請注意這一點:你使用jQuery的ajax功能,所以在其他情況下使用jQuery太(你使用純JavaScript代替)。

您獲得價值是這樣的:

var status = document.getElementById("statusForm").value; 

使用jQuery的語法來代替:

var status = $("#statusForm").val(); 

其他信息

如,@Utkanos在評論這個答案注意:

......如果你看錯誤控制檯,所有這些都會很明顯。

您必須使用一些調試工具,如FireBug或DevTools(Chrome,也可以在Chrome中使用CTRL + SHIFT + J)。不必。你必須做。

+0

......如果你看錯誤控制檯,所有這些都是顯而易見的。 – Utkanos

+1

另外,提及'$('#statusForm')。val()'而不是'var status = document.getElementById(「statusForm」)。value;'。 –

+1

@ WereWolf-TheAlpha,完成。 –