2013-07-22 52 views
0

我有問題,我不知道如何解決,這是我的PHP腳本的快照。與php功能混淆導致在不同的服務器上出錯

foreach($result as $row){ 
      $Admin [] = array('id'=>$row['id'],'username' => $row['username'], 'email' => $row['email'], 'password'=>$row['password']); 
     } 

     include 'view_admins.php'; 

,這是view_admins.php這就是培訓相關的一部分,我的問題

<article id="admins">//html tag 
    <?php 

    foreach($Admin as $admins)://this is line 75 

    ?> 

     <form action="" method="post" > 
      <div> 
      <p><tr><td><p><?php htmlout($admins['username']); ?></p></td><td> 
      <input type="hidden" align="center" name="id" value="<?php echo $admins['id'];?>"></td><td> 

      <input type="submit" name="action" value="edit"> 
      <input type="submit" name="action" value="delete"></p></td></tr> 

      </div> 
     </form> 
     <?php endforeach; ?> 
     </article> 
運行此代碼時它會產生一個「 Warning: Invalid argument supplied for foreach() in /home/a2516093/public_html/connect/view_admins.php on line 75

我的困惑是這個代碼運行在完美的罰款

我然而,當本地主機上傳到我的主機它產生了上述警告,有人可以告訴我什麼可能導致問題,即時通訊仍然學習PHP編程,所以任何幫助將不勝感激。

我的理解$Admin應該在view_admins.php中可見,糾正我,如果我錯了。謝謝

+2

看來你可以從數據庫中獲取數據,並在數據庫中的信息存在於服務器上? –

+0

是的,它存在@AnthonyForloney – Sello

+0

@Sello - 檢查你是否正確查詢數據庫;你的數據庫連接和查詢的返回值是什麼?您使用的數據庫用戶的權限是什麼? – andrewsi

回答

1

我猜你正試圖foreach()你從mysql_query()得到的直接結果。

你不能這樣做。您需要使用mysql_fetch_array()mysql_fetch_assoc();來定義您的行。

一個例子:

$result = mysql_query("Your query"); 
while($row = mysql_fetch_array($result)) { 
    $Admin [] = array('id'=>$row['id'],'username' => $row['username'], 'email' => $row['email'], 'password'=>$row['password']); 
} 

你剛纔的代碼工作可能是因爲該固定的無效代碼一些AUTOMAGIC配置設置的原因。也可以是一個MySQL插件,它自動獲取正確的屬性,而您通常必須手動執行此操作。

+0

不錯的猜測,讓看看你的權利:) – DevZer0

+0

好吧讓我試試看,病在一分鐘確認 – Sello

+0

:) hehehe謝謝你,產生正確的結果,所以我的錯誤是直接從mysqli_query()我看到的數據。 – Sello

0

我認爲問題出在您的第一行foreach($result as $row){數據可能不會到達那裏。

只需print_r($result);之前foreach($result as $row){並看到任何數據在那裏。

要的foreach之前刪除錯誤檢查:

<article id="admins">//html tag 
<?php 
if(!empty($Admin)){ 
foreach($Admin as $admins)://this is line 75 

?> 

    <form action="" method="post" > 
     <div> 
     <p><tr><td><p><?php htmlout($admins['username']); ?></p></td><td> 
     <input type="hidden" align="center" name="id" value="<?php echo $admins['id'];?>"></td><td> 

     <input type="submit" name="action" value="edit"> 
     <input type="submit" name="action" value="delete"></p></td></tr> 

     </div> 
    </form> 
    <?php endforeach; 
    } 
    else{ echo "No data found !";} 
    ?> 
    </article>