簡體   English   中英

在JavaScript中執行PHP腳本?

[英]Executing a php script in javascript?

當用戶離開我的網站時,我正在嘗試運行一個快速的php腳本,並且還將我的javascript變量傳遞給php,但是我不太確定如何包含php文件並將其傳遞給var。 但是它實際上並沒有運行php腳本。 有任何想法嗎?

(JavaScript從外部活動函數獲取用戶名,我知道該方法對警報及其下的var進行了測試。)

我的JavaScript:

<script language="javascript" type="text/javascript">

            var username = null;

            function GetUsername(usernameff)
            {
                username = usernameff;
            }

            window.onbeforeunload = function () 
            {

            if (username != null)
            {

            <?php include("scripts/RemoveUserOnDisconnect.php?username=username");?>
            }

            }


            </script>

我的RemoveUserOnDisconnect.php文件:

<?php
    mysql_connect("mysql.mysql.com", "username", "password");
    mysql_select_db("my_db");
    mysql_query("DELETE FROM my_table WHERE username = '$username'");         
?>

嘗試ajax請求。 根據您的PHP腳本,您將需要$.post$.get

jQuery的:

<script language="javascript" type="text/javascript">

    var username = null;

    function GetUsername(usernameff){
        username = usernameff;
    }

    window.onbeforeunload = function(){
        if (username != null){
          $.post('scripts/RemoveUserOnDisconnect.php', {username: username}, function(){
            //successful ajax request
          }).error(function(){
            alert('error... ohh no!');
          });

        }
    }
 </script>

編輯:

如果您使用上面的代碼,則您的PHP腳本應引用$_POST數組。

<?php
    $username = $_POST['username'];

    mysql_connect("mysql.mysql.com", "username", "password");
    mysql_select_db("my_db");
    mysql_query("DELETE FROM my_table WHERE username = '$username'");         
?>

對腳本/RemoveUserOnDisconnect.php?username=username進行ajax調用。 您不能在Javascript中包含PHP,Javascript在瀏覽器中執行,PHP在服務器上執行。

您需要對PHP腳本進行AJAX調用。 您的javascript代碼只會向php腳本發出后台請求,該腳本將執行這些MySQL語句。 Google上AJAX。 推薦:學習jQuery並通過$.get()$.post()使用Ajax

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM