2011-04-29 180 views
0

當任何用戶登錄時,我只想向PHP發送2個參數,然後想要更新相關的數據庫表。在JavaScript中可能嗎?如果可能的話,任何代碼或鏈接的讚賞。通過PHP通過Javascript訪問MySQL

+1

你看了看嗎? – tradyblix 2011-04-29 05:05:16

+0

你最好使用PHP調用自己來更新數據庫條目,而不是使用JavaScript,如果你確實需要在JS中實現它,那麼Ajax是你的朋友。 – 2011-04-29 05:07:06

+0

@drachenstern:我假設你沒有仔細閱讀這個問題,OP想要更新兩個值,當用戶登錄時(讓我們以登錄計數爲例 - 假設 - 讓OP說要更新sign_in計數爲用戶)。這可以通過在PHP中添加afterLogin()函數輕鬆實現,該函數會在每次登錄後更新這些值 - 請參閱MOM NO AJAX! :)另外,我想你也沒有仔細閱讀我的評論 - 我在那裏提到了阿賈克斯 - 這與德蘭談到的一樣。這種情況可能會有所不同.. – 2011-04-30 00:29:19

回答

1

您可以使用JavaScript來請求使用XMLHttpRequest的PHP腳本,並在PHP腳本中包含一些與MySQL的數據庫交互。

+0

我認爲他需要實際的代碼作爲例子 – jcolebrand 2011-04-29 05:06:09

+0

感謝回覆@Delan Azabani,@drachenstern和每一個。你是對的@drachenstern。我嘗試了很久,但JS/AJAX沒有連接到PHP。我需要一些示例代碼。 – 2011-04-29 05:26:37

0

正如pedrorezende所說,使用JQuery確實非常簡單。最簡單的方法會是這樣的

$.post('sample/path?var1=value&var2=otherValue'); 

編輯:這裏是完整的代碼,我相信這會實現你想要的(未經測試)是什麼:

<script type="tex/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"> 
</script> 
<script type="text/javascript"> 
    $("#login_form").submit(function() { 
    $.post("login_handler.php", $("#login_form").serialize()); 
    } 
</script> 
<body> 
    <form id="login_form"> 
     <input type="text" name="username"></input> 
     <input type="text" name="password"></input> 
     <input type="submit" value="login"> 
    </form> 
</body> 

第一個腳本load JQuery

將第二個腳本creates the handlersends the form data添加到外部PHP文件。

然後在login_handler.php中,您將使用$_POST值將您的查詢發送到MySQL。

+0

如果需要使用回調,我是否需要使用外部接口調用此函數? – 2011-04-29 09:19:23