1

のような5列のテーブルがありますTABLE(a,b,c,d,e)

からすべての列を選択したいのですがTABLE、 while ループが始まるとスクリプトが機能しません。私のphpコードは次のとおりです。

include_once $_SERVER['DOCUMENT_ROOT'].'/include/db.inc.php' ;
$sql="select * from TABLE";
$result = mysqli_query($link,$sql );
if (!$result)
{
include_once "wall.html.php";
echo'<tr><td align="center"> OOOOPPPPPSSS!!!SORRY,UNABLE TO DISPLAY LATEST 25 TOPICS</td></tr>';
exit();
}
while ($row = mysqli_fetch_array($result))
{
$as[]=$row['a'];
$bs[]=$row['b'];
$cs[]=$row['c'];
$ds[]=$row['d'];
$es[]=$row['e'];
}
foreach($as as $x)
{
  $name=$x;
}....................and so on

私は多くの方法でチェックしてデバッグしました.whileループの後にスクリプトが実行されていないことに気づきました。

4

4 に答える 4

1

変数の前に $ を書き忘れました:

$as[]=$row['a'];
^------------
bs[]=$row['b'];
cs[]=$row['c'];
ds[]=$row['d'];
es[]=$row['e'];
于 2013-03-30T09:24:03.653 に答える
0

これを試して、問題を特定できるように print_r() 関数が印刷しているものを教えてください。

while ($row = mysqli_fetch_array($result))
{
$as[]=$row['a'];
$bs[]=$row['b'];
$cs[]=$row['c'];
$ds[]=$row['d'];
$es[]=$row['e'];
}
print_r($as);
foreach($as as $x)
{
  $name=$x;
}
于 2013-03-30T09:50:00.807 に答える
0

array_push()の使用はどうですか? また、$as[] と取得したすべての配列に対してprint_r()を使用し、出力をここに貼り付けて、問題が正確に何であるかをより明確に把握できるようにします。

于 2013-03-30T09:30:20.690 に答える
0

最初に からブラケットを削除します。$as[]結果は$row['a']配列になりません。

それが機能しない理由foreachです。配列が返されません。

結果$asが空であるが、データベースに何かがある場合は、行名が有効であることを確認してください。$row[0]の代わりに使用し$row['A']ます。

を使用してコードをデバッグprint_r($row)し、結果の内容を確認します。

于 2013-03-30T16:20:59.137 に答える