簡體   English   中英

加載資源失敗:服務器響應狀態為500(); 在當地環境中工作

[英]Failed to load resource: the server responded with a status of 500 (); works in local environment

我正在將 CRUD 應用程序發布到用戶首先登錄的位置。 該應用程序由 2 個 MySQL 表構成; 一個用於登錄,另一個用於 CRUD 值。 這個例子在我使用 XAMP/PC 和 MAMP/MAC 的本地環境中不起作用。

當我將它上傳到我的主機時,它確實可以工作,但是當指定 for each 循環時,CRUD 值不會填充。 我連接了 mysql_error(); 解釋為什么這在我的主機上不起作用。

mysql_error() 位置

在 logincrud/main.php 中的第 34 行:

第 34 行不工作

main.php 表中的代碼:

    <table class="table table-striped table-bordered">
              <thead>
                <tr>
                  <th>Number</th>
                  <th>Explanation</th>
                  <th>Date Accured</th>
                  <th>Action</th>
                </tr>
              </thead>
              <tbody>
              <?php
               include 'database.php';
               $pdo = Database::connect();
               $sql = 'SELECT * FROM saftey ORDER BY id DESC';
               foreach (($sql) as $row) {
                        echo '<tr>';
                        echo '<td>'. $row['ins_n'] . '</td>';
                        echo '<td>'. $row['explanation'] . '</td>';
                        echo '<td>'. $row['date'] . '</td>';
                        echo '<td width=250>';
                        echo '<a class="btn" href="read.php?id='.$row['id'].'">Read</a>';
                        echo ' ';
                        echo '<a class="btn btn-success" href="update.php?id='.$row['id'].'">Update</a>';
                        echo ' ';
                        echo '<a class="btn btn-danger" href="delete.php?id='.$row['id'].'">Delete</a>';
                        echo '</td>';
                        echo '</tr>';
               }
               Database::disconnect();
              ?>
              </tbody>

        </table>

添加、更新和刪除在主機上工作,因為我可以從 myphpadmin 的安全表中看到記錄。 登錄/注銷來自一個完全不同的表。 同樣,本地環境沒有問題。

我向我的主機提供商開了一張幫助單,但我收到的只是他們沒有對應用程序進行故障排除。

我一直在尋找解決方案幾個星期,但我找不到解決方案。 在 Chrome 瀏覽器中,控制台顯示錯誤:hp:1 加載資源失敗:服務器響應狀態為 500 ()" 服務器問題?意識到 SQL 注入問題。

如果有幫助,我上傳了一個GITHUB 項目

先感謝您。

我解決了為什么它在我的實時站點上不起作用的問題。 查看這篇Stackoverflow 文章PHP 數據對象具有向前箭頭執行代碼的方式。 這種 foreach 的工作方式導致值返回 false; 換句話說,不在數組中。

我將 PHP 數據對象重組為一個名為 $records 的變量。

foreach (($sql) as $row) {

$records = $pdo->query($sql);
                   foreach ($records as $row) {

回聲更改為打印

}

現在工作。 奇怪的是,在這種情況下,回聲與打印有什么不同。

<table class="table table-striped table-bordered">
                  <thead>
                    <tr>
                      <th>Number</th>
                      <th>Explanation</th>
                      <th>Date Accured</th>
                      <th>Action</th>
                    </tr>
                  </thead>
                  <tbody>
                  <?php
                   include 'database.php';
                   $pdo = Database::connect();
                   $sql = 'SELECT * FROM safety ORDER BY id DESC';
                   $records = $pdo->query($sql);
                   foreach ($records as $row) {
                            print '<tr>';
                            print '<td>'. $row['ins_n'] . '</td>';
                            print '<td>'. $row['explanation'] . '</td>';
                            print '<td>'. $row['date'] . '</td>';
                            print '<td width=250>';
                            print '<a class="btn" href="read.php?id='.$row['id'].'">Read</a>';
                            print ' ';
                            print '<a class="btn btn-success" href="update.php?id='.$row['id'].'">Update</a>';
                            print ' ';
                            print '<a class="btn btn-danger" href="delete.php?id='.$row['id'].'">Delete</a>';
                            print '</td>';
                            print '</tr>';
                   }
                   Database::disconnect();

暫無
暫無

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

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