簡體   English   中英

如何在javascript函數內的php中使用javascript變量

[英]how to use javascript variable in php inside a javascript function

我試圖在下面的代碼的JavaScript函數中的PHP代碼中獲取JavaScript變量“ i”,我發現在檢索記錄時出現問題,無論是第一個記錄還是最后一個記錄都將重復,而不是數據庫中的所有記錄。我出來嗎? 謝謝

      <?php
         $query21 = $mysqli->query("SELECT * FROM register");
         $nr      = mysqli_num_rows($query21);
         while ($row = mysqli_fetch_assoc($query21)) {
         $results[] = $row;
             }

        ?>




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


var intervalID = 0;
    var time = 10;

    MsgPop.displaySmall = true;
    MsgPop.position = "bottom-right";

    $(document).ready(function(){
        var test = MsgPop.open({
        Type:            "success",
        AutoClose:        true,
        Content:        "Welcome to MsgPop!"});

        MsgPop.live();
    });

  function showMessages(){    

        var n = '<?php
echo $nr;
?>';

        var i = 0;


        while (i < n){

                var name = '<?php
echo $results[i]['name'];
?>';



        MsgPop.open({
        Type:            "success",
        Content:        name,
        AutoClose:        false});
    i++;
    }
</script>

不可能: PHP是僅在服務器上運行的服務器端語言。 但javascript是客戶端腳本,它只能在您的瀏覽器上運行。 PHP僅根據您的請求給出響應。 php卷在服務器上結束。 但是javascript只適用於您的響應,也就是說javascript只能在瀏覽器上使用。

您可以嘗試使用AJAX,否則不會發生。 就像說的那樣,PHP僅用於服務器端...祝您好運!

PHP無法獲取javascript變量。 您應該嘗試其他策略。

在服務器端(PHP),嘗試將$ resuts存儲在javascript變量中。

var results = '<?php echo json_encode($results); ?>';

然后,在瀏覽器端,嘗試使用javascript函數訪問數據。

var name = results[i]['name'];

首先,您必須創建一個返回相同數組的php文件。 文件包含

$query21 = $mysqli->query("SELECT * FROM register");
$nr = mysqli_num_rows($query21);
while ($row = mysqli_fetch_assoc($query21)) {
    $results[] = $row;
}
echo json_encode($results);
exit;

現在,您必須從javascript代碼中使用ajax調用此文件。

$.ajax({
  type: "POST",
  url: "sql.php",  //your file url

})
.done(function (data) {
    //you get your array data(json format)
});

現在,您將以json格式在ajax響應中獲得該數組,並且可以使用此數據執行任何操作。

暫無
暫無

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

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