2014-10-21 137 views
3

我很新的編程,並試圖更新數據庫中的某個列使用PHP和JavaScript。更新信息數據庫使用php

數據庫只有2列,seatnums和status。基本上,我想要狀態重置爲1,如果狀態是目前0.可以有人指向我在正確的方向嗎?

我有一個div內一類在我的HTML:

<a class='two' href="javascript:databaseReset() ">Reset</a> 

我的JavaScript函數(部分IM掙扎):

function databaseReset(); 
    $.ajax({ 
     url: "dbreset.php", 
     type: "POST", 
     data: { 
      'seatnum': seatnum, 
      'status': '1' 
     }, 
     success: function() { 
      alert("ok"); 
     } 

function over(id) { 
    selectedseat=$(id).attr('title'); 
    $(id).attr('src','images/mine.gif'); 
    $(id).attr('title', 'Available'); 
} 

function out(id) { 
    $(id).attr('src','images/available.gif'); 
} 

我的PHP文件:

<?php 
include("dbconnect.php"); 

$query="UPDATE seats SET status=1 WHERE status=0"; 

$link = mysql_query($query); 
if (!$link) { 
die('error 2'); 
} 


?> 
+2

您應該瞭解如何使用$ _POST變量。 – 2014-10-21 21:59:04

回答

0

我認爲這只是一個錯字,但你的函數調用需要圍繞ajax調用括起來:

function databaseReset(){ //<---*****Add these braces***** 
    $.ajax({ 
    url: "dbreset.php", 
    type: "POST", 
    data: { 
     'seatnum': seatnum, 
     'status': '1' 
    }, 
    success: function() { 
     alert("ok"); 
    } 
}; //<---*****Add these braces******* 

你的代碼似乎申報的功能,但不分配其功能

另外,數據部分是不必要的,因爲它不使用。實際上,由於您沒有發佈數據,因此可以使用「GET」方法。

除此之外,您的代碼看起來不錯,請問請指出問題是什麼?

+0

它不會運行我的onmouseover事件時,我認爲這是主要問題,我不能發現爲什麼它導致整個JavaScript文件停止工作。此外,即使當我點擊重置按鈕,目前沒有任何反應,所以可能有一個問題,連接它所有 – user3487430 2014-10-21 22:11:05

+0

爲了調試您的連接,我建議運行您的PHP頁面通過從URL調用指示,而不是調用die,根據查詢的結果,使用條件打印語句來回顯'成功'或'失敗' – NewbornCodeMonkey 2014-10-21 22:13:33

+0

對於onmouseover事件,我不確定何時以及在何種情況下調用它。如果您可以提供突出顯示此問題的其他代碼,我很樂意看一看,看看我能否提供幫助。但是,如上所述,我會首先運行一個孤立的PHP頁面,以確保您的連接正常工作,並且您的憑據允許您訪問數據庫。此外,它有助於打開瀏覽器的控制檯,並確保它被設置爲保留,以便捕獲您的js可能拋出的所有錯誤。這可以給你特定的行號,這有助於調試。 – NewbornCodeMonkey 2014-10-21 22:15:18