dongyue7796 2016-08-13 14:53
浏览 70
已采纳

JQuery Mobile PHP MySQL从第一页的第二页选择中检索数据

so I didn't know how to properly express it in the title but I'm gonna do it here. I have two pages, in the first one I added a listview with some items (each got value). What I want is when the user clicks on an item, he/she goes to the second page and it'd show him/her a listview (that retrieves MySQL data based on the value they selected). But my problem is when I click on an item in the first page, it shows me NOTHING in the second page.

I have tried this with several methods for several days, and it's getting frustrating now! I really need help with it. Much Appreciated.

Here is my first page code:

<?php
session_start();
include "partials/connectDb.php";

if (isset($_POST["goverVal"]))
{
    $_SESSION["goverVal"] = $_POST["goverVal"];
}
?>

<div data-role="page" id="homepage">
    <!-- HEADER INCLUDE -->
    <?php include "partials/header.php"; ?>
    <div data-role="main" class="ui-content" align="center">
        <h2>Select A Governorate</h2>
            <form action="index.php" method="POST">
                <ul data-role="listview" id="goverVal" name="goverVal">
                <?php
                    include "partials/connectDb.php";

                    $sql = "SELECT * FROM governorate_table;";
                    $run_query = mysqli_query($conn, $sql);

                    while ($row = mysqli_fetch_array($run_query))
                    {
                        $gId = $row['g_id'];
                        echo "<li data-value='{$gId}'><a href='area_page.php' class='ui-btn'>$gId - $row[name]</a></li>";
                    }
                ?>
                </ul>
            </form>
    </div>
    <!-- FOOTER INCLUDE -->
    <?php include "partials/footer.php"; ?>
</div>

=======================================================================

And this is my second page's code:

<?php
session_start();
include "partials/connectDb.php";

$goverChoice = $_SESSION["goverVal"];
?>

<div data-role="page" id="areaPage">
    <!-- HEADER INCLUDE -->
    <?php include "partials/header.php"; ?>
    <div data-role="main" class="ui-content" align="center">
        <h2>Select an Area</h2>
        <?php
            include "partials/connectDb.php";

            $q = "SELECT * FROM area_table WHERE governorate = '$goverChoice';";

            $run_sql = mysqli_query($conn, $q);

            echo "<ul data-role='listview'>";
            while ($row = mysqli_fetch_array($run_sql))
            {
                echo "<li><a href='#'>".$row['area_name']."</a></li>";
            }
            echo "</ul>";
        ?>
    </div>
    <!-- FOOTER INCLUDE -->
    <?php include "partials/footer.php"; ?>
</div>
  • 写回答

1条回答 默认 最新

  • dongtuo4723 2016-08-13 15:57
    关注

    Never mind. I just finally found an appropriate solution. Here is what I used if anyone ran into the same problem:

    In the first page:

    $(document).ready(function(){
        $('#goverVal').on("click", "li", function(){
           $.ajax("update_session.php",{method:"post", data:{val:$(this).attr("data-value")}}); 
        });
    });
    

    And this in a separate file:

    <?php
    //Another File
    session_start();
    if (isset($_POST["val"]))
    {
        $_SESSION["val"] = $_POST["val"];
    }
    ?>
    

    And this line in the second page where to show the data, at the top:

    $goverChoice = $_SESSION["val"];
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 MATLAB动图的问题
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名