OnClick事件和检查MySQL结果

时间:2017-04-14 02:03:52

标签: php html mysql

我的第一个问题,如果查询返回一个空集,那么基于该操作执行操作的最佳方法是什么?比如只是打印一条消息这么说?我现在设置它的方式是,如果返回一个空集,则不显示任何内容。 我试过这样的事情if (mysql_num_rows($sql)==0) { echo "None"; },但这似乎不起作用。我尝试在foreach之后和之前放置它。

$own = $_POST['flight'];flight来自下拉列表)

<p align="center">List of passengers on that flight: <br> 
        <?php    
            if ($_SERVER['REQUEST_METHOD'] == POST) {
                $own = $_POST['flight'];
                $sql = "SELECT firstName, lastName FROM passenger, flight, manifest WHERE flight.flightnum = 
                manifest.flightnum AND manifest.passnum = passenger.passnum AND flight.flightnum = '".$own."'"; 

                foreach($connection->query($sql) as $row ) { 
                    echo $row['firstName']. " ". $row['lastName'];
                    echo '<br>';
                }
            }
?>
</p>

接下来,我对如何制作动作触发按钮感到困惑。我想在点击一个按钮后显示这个(下面)。 我尝试制作一个这样的按钮(工作正常),<button onclick="myFunction()">Click me</button> <p id="demo"></p>,但我无法弄清楚如何为它编写脚本。

<p align="center">List of all passengers: <br> 
    <?php    
        $sqlRequest = "SELECT firstName, lastName FROM passenger ORDER BY lastName"; 
        $result = $connection->query($sqlRequest); //save result

        if($result->num_rows > 0) { 
            while($row = $result->fetch_assoc()) {
                echo $row["firstName"]. " ". $row["lastName"]. "<br>";
            }
        }
    ?>
</p>

很抱歉将两个问题合二为一。看起来像一个好主意,而不是两个单独的线程。

1 个答案:

答案 0 :(得分:1)

回答你的第二个问题:

我将你的任务分成2部分。服务器端(getlist.php)和客户端(getlist.html)。我们将在客户端脚本中使用jquery。

getlist.html:

<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
<p align="center">List of all passengers: <br> 
<span id="span-list"></span>
</p>
<button id="btn-update">Update List</button>
<script>
  $("#btn-update").click(function(){
    $.ajax({
     type: "GET",
     url: "getlist.php",
     success: function(msg){
       $("#span-list").html(msg);
     }
    })
  })
</script>

getlist.php:

<?php    
    $sqlRequest = "SELECT firstName, lastName FROM passenger ORDER BY lastName"; 
    $result = $connection->query($sqlRequest); //save result

    if($result->num_rows > 0) { 
        while($row = $result->fetch_assoc()) {
            echo $row["firstName"]. " ". $row["lastName"]. "<br>";
        }
    }
?>