$ get命令有任何错误。.无错误显示,因此不显示结果

时间:2019-02-16 06:50:32

标签: php mysql

Cpanel中没有错误,但浏览器中没有任何内容。

关于我的代码,我需要直接从浏览器“ http://www.example.com/exp.php?status=pending”显示$ result状态,以显示所有未决的表。但是当我在浏览器中执行时,仅显示“”

我是编码方面的新手。.这些代码是我从网上和缝纫那里获得的,以获取我的应用程序。

任何帮助将不胜感激。 预先感谢

<?php require "templates/header.php"; ?>

<?php

session_start();
if(!$_SESSION['uname']){
 header('Location: ../index.php');
          }
require "../config.php";
require "../common.php";         

if (isset($_GET['status'])) {
  try {
    $connection = new PDO($dsn, $username, $password, $options);
    $status = $_GET['status'];
    $sql = "SELECT * FROM users WHERE status = :status";
    $statement = $connection->prepare($sql);
    $statement->bindValue(':status', $status);
    $statement->execute();

    $result = $statement->fetch(PDO::FETCH_ASSOC);
  } catch(PDOException $error) {
      echo $sql . "<br>" . $error->getMessage();
  }
} else {
    echo "Something went wrong!";
    exit;
}
?>

<?php  
if (isset($_GET['status'])) {
    if ($result->rowCount() > 0) { ?>
        <h2>Results</h2>

        <table>
            <thead>
                <tr>
                    <th>kode</th>
                    <th>imei</th>
                    <th>nama</th>
                    <th>tipe</th>
                    <th>kerusakan</th>
                    <th>harga</th>
                    <th>status</th>
                    <th>alasan</th>
                    <th>perubahan</th>
                </tr>
            </thead>
            <tbody>
        <?php foreach ($result as $row) { ?>
            <tr>
                <td><?php echo escape($row["kode"]); ?></td>
                <td><?php echo escape($row["imei"]); ?></td>
                <td><?php echo escape($row["nama"]); ?></td>
                <td><?php echo escape($row["tipe"]); ?></td>
                <td><?php echo escape($row["kerusakan"]); ?></td>
                <td><?php echo escape($row["harga"]); ?></td>
                <td><?php echo escape($row["status"]); ?></td>
                <td><?php echo escape($row["alasan"]); ?> </td>
                <td><a href="tutupservis.php?kode=<?php echo escape($row["kode"]); ?>">UPDATE</a></td>
            </tr>
        <?php } ?>
        </tbody>
    </table>
    <?php } else { ?>
        <blockquote>No results found for <?php echo escape($_POST['status']); ?>.</blockquote>
    <?php } 
} ?> 


<a href="index.php">Kembali</a>

<?php require "templates/footer.php"; ?>

仅显示“ templates / header.php” 我希望结果能排成一排待处理状态

3 个答案:

答案 0 :(得分:1)

我已经通过反复试验解决了这个问题。 这是显示我的结果的代码。 感谢您的帮助

解决方案正在改变 $ result = $ statement-> fetch(PDO :: FETCH_ASSOC); 至 $ result = $ statement-> fetchALL(PDO :: FETCH_ASSOC);

<?php require "templates/header.php"; ?>

<?php
session_start();
if(!$_SESSION['uname']){
 header('Location: ../index.php');
          }
require "../config.php";
require "../common.php";         

if (isset($_GET['status'])) {
  try {
    $connection = new PDO($dsn, $username, $password, $options);
    $status = $_GET['status'];
    $sql = "SELECT * FROM users WHERE status = :status";
    $statement = $connection->prepare($sql);
    $statement->bindValue(':status', $status);
    $statement->execute();

    $result = $statement->fetchALL(PDO::FETCH_ASSOC);
  } catch(PDOException $error) {
      echo $sql . "<br>" . $error->getMessage();
  }
} else {
    echo "Something went wrong!";
    exit;
}
?>
<?
if (isset($_GET['status'])) {
    if ($result && $statement->rowCount() > 0) { ?>
        <h2>Results</h2>
        <table>
            <thead>
                <tr>
                    <th>harga</th>
                    <th>status</th>
                    <th>alasan</th>
                    <th>perubahan</th>
                </tr>
            </thead>
            <tbody>
        <?php foreach ($result as $row) { ?>
            <tr>                
                <td><?php echo escape($row["harga"]); ?></td>
                <td><?php echo escape($row["status"]); ?></td>
                <td><?php echo escape($row["alasan"]); ?> </td>
                <td><a href="tutupservis.php?kode=<?php echo escape($row["kode"]); ?>">UPDATE</a></td>
            </tr>
        <?php } ?>
        </tbody>
    </table>
    <?php } else { ?>
        <blockquote>No results found for <?php echo escape($_POST['status']); ?>.</blockquote>
    <?php } 
} ?> 


<a href="index.php">Kembali</a>

<?php require "templates/footer.php"; ?>

答案 1 :(得分:0)

您的代码似乎没有问题。我不知道,但是

if (isset($_GET["status"]))

为我工作。

答案 2 :(得分:0)

首先,确定代码中的$_GET['status']确实在按需获取数据,因此您在处理数据时不必担心。

使用以下命令启动您的php文件:

<?php
$status=$_GET['status'];
echo $status;

如果那正在显示您想要的数据,请注释掉前两行,然后继续构建其余代码。即使通过$ _GET验证了数据,也没有任何结果会为您指明正确的方向。