簡體   English   中英

當javascript之間出現PHP代碼未執行

[英]PHP code not executing when javascript comes between

這是一種情況...在php頁面中創建了兩個結果。.結果以json_encode 結果顯示完美。 但是,當我在兩個php代碼塊中插入一個javascript代碼時,則顯示一個結果,而另一個則沒有。.我真的不知道為什么會這樣。

$action = isset($_GET['action']);
if($action == "get_requests"){

include("../connect.php");


    $sql_song_req = "SELECT COUNT(*) FROM `song_requests`";
    $sql_select_song = "SELECT * FROM `song_requests` ORDER BY id ASC";

    $sql_count = $rad->prepare($sql_song_req);
    $sql_count->execute();

    $count = $sql_count->fetchColumn();



    $select_song_prep = $rad->prepare($sql_select_song);
    $select_song_prep->execute();

    while($row = $select_song_prep->fetch(PDO::FETCH_ASSOC)){

        $id = $row['id'];
        $name = $row['name'];
        $song = $row['songname'];
        $dedicatedto = $row['dedicatedto'];
        ?>
        <script>
            function delete_req(id){
        alert("hello");
            }
        </script>
        <?php

        $data .= '  <tr cellpadding="5" cellspacing="6" align="center" width="60%">
                <td>'.$id.'</td>
                <td>'.$name.'</td>
                <td>'.$song.'</td>
                <td>'.$dedicatedto.'</td>
                <td><a href="javascript:;" onclick="delete_req('.$id.');" style="background:black; color:white; padding:8px;">Delete</a></td>
                </tr>';

    }


    $display = '    <table "cellspacing="4" align="center">
            <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Song</th>
            <th>Dedicated to</th>
            <th>Delete</th>

            '.$data.'           

            </tr>
            </table>';


        $response = array();
            $response['data_from_db'] = $display;
        $response['count'] = $count;
        echo json_encode($response);

}   

這里的response['count']顯示在我的php頁面上,但是沒有顯示$response['data_from_db'] 當我刪除JavaScript代碼時,它們都將顯示出來。

我應該提到正在使用NGINX和php5-fpm

您的支架不匹配。

$dedicatedto = $row['dedicatedto'];之后添加大括號} $dedicatedto = $row['dedicatedto']; 您的while循環未正確關閉。

$action = isset($_GET['action']);
if($action == "get_requests"){

include("../connect.php");

    $sql_song_req = "SELECT COUNT(*) FROM `song_requests`";
    $sql_select_song = "SELECT * FROM `song_requests` ORDER BY id ASC";

    $sql_count = $rad->prepare($sql_song_req);
    $sql_count->execute();

    $count = $sql_count->fetchColumn();

    $select_song_prep = $rad->prepare($sql_select_song);
    $select_song_prep->execute();

    while($row = $select_song_prep->fetch(PDO::FETCH_ASSOC)){

        $id = $row['id'];
        $name = $row['name'];
        $song = $row['songname'];
        $dedicatedto = $row['dedicatedto'];
        } // <- added. Brace for while loop
        ?>
        <script>
            function delete_req(id){
        alert("hello");
            }
        </script>
        <?php

        $data .= '  <tr cellpadding="5" cellspacing="6" align="center" width="60%">
                <td>'.$id.'</td>
                <td>'.$name.'</td>
                <td>'.$song.'</td>
                <td>'.$dedicatedto.'</td>
                <td><a href="javascript:;" onclick="delete_req('.$id.');" style="background:black; color:white; padding:8px;">Delete</a></td>
                </tr>';

    $display = '    <table "cellspacing="4" align="center">
            <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Song</th>
            <th>Dedicated to</th>
            <th>Delete</th>

            '.$data.'           

            </tr>
            </table>';


        $response = array();
            $response['data_from_db'] = $display;
        $response['count'] = $count;
        echo json_encode($response);

}

暫無
暫無

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

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