2016-04-13 9 views
-1

私は簡単なテストをしていますが、私はこれを動作させることができます。実際、私はそれを嫌う人になります。そのイメージとPHPに問題があるかのように。画像は1枚しか表示できません。スクリプトが正しく表示されます。私が気付いていない修正やキャッシュの問題がある場合は、教えてください。ありがとう。ここでは、2つの画像を表示するための計算サーバー側とhtmlの2つの部分にあるコードを示します。これはPHPやキャッシュの障害ですか?

PHP

$result = mysqli_query($mydb, "SELECT user FROM `table` ORDER BY RAND() LIMIT 0, 2"); 

while ($row = mysqli_fetch_array($result, MYSQLI_NUM)){ 
echo $row[0]; // I use this echo to prove that the user name shows for [0] 
echo $row[1]; // I use this echo to prove that the user name shows for [1] 

$src1 = 'thumb/'.$row[0].'img1.jpg'; // directory of file 
$src2 = 'thumb/'.$row[1].'img1.jpg'; // directory of file 
} 

HTMLはIMG

<!doctype html> 
<html> 
    <body> 
     <table> 
      <tr> 
      <td> 
       <img src="<?php echo $src1; ?>" id="srca" alt="srcerra" /> 
       <img src="<?php echo $src2; ?>" id="srcb" alt="srcerrb" /> 
      </td> 
      </tr> 
     </table> 
    </body> 
</html> 

最初の画像は、罰金を示して表示するために、第二の画像は、ちょうど私のIMG ALT(srcerrb)を与えます。ユーザー(名前)はファイル名ごとに異なります。

私が行ったのと同じ結果になるか試してみてください。イメージディレクトリは完璧でテスト済みです。乾杯。

+3

'table'(' user'カラム)から1カラムだけを選択しているので、 '$ row'は1つのエレメント(要素0、要素1はありません)を持つことになります。 ).....だからもしあなたが本当に 'echo $ row [1];'を実行しているなら、それは何を表示しますか? –

+2

ループ内の値も上書きしています – Machavity

+0

テーブルには「」と「​​」要素がありません。 – Barmar

答えて

1

あなたは混乱する行と列のようです。クエリでは2つの行が返されますが、それぞれには1つの列($row[0])しかありません。

$result = mysqli_query($mydb, "SELECT user FROM `table` ORDER BY RAND() LIMIT 0, 2"); 
$row = mysqli_fetch_row($result); // get first row 
$src1 = 'thumb/'.$row[0].'img1.jpg'; 
$row = mysqli_fetch_row($result); // get second row 
$src2 = 'thumb/'.$row[0].'img1.jpg'; 
+0

大丈夫、私はこれを試してみる、ありがとう....私はそれが画像を埋めることができない理由を理解できなかった....歓声 – MikeIsMad

+0

いいえ、まだ画像を表示しません....それは本当のエコーですユーザーは正しいです(前に私のコードであった)が、あなたのコードでさえそれはイメージを表示しません。私がしたものを複製しようとすると、2番目のファイルを読む方法がわかります。 – MikeIsMad

+0

'$ src1'にファイル名がありませんでした。アップデートをお試しください。 – Barmar