0

DIV 内の mysql テーブルから行をエコーし​​ようとしましたが、次のようにするとうまくいきません。

     echo $row['test'];

内部while( $row = $result->fetch_assoc() ){ }では完璧に機能しますが、DIVタグ内に表示したかったのです。私は何かが欠けていることを知っていますが、それが何であるかはわかりません。ご協力いただきありがとうございます。

                            <?php
            $mydb = new mysqli('localhost', 'root', '', 'test');
            $sql = "SELECT * FROM test  order by id limit 1 ";
            $result = $mydb->query($sql);
            if (!$result) {
                echo $mydb->error;
            }
            while( $row = $result->fetch_assoc() ){ 
            }
            $mydb->close ();

            ?>
            <html>
            <head>
            </head>
            <body>
            <div><? echo $row['test'];?>
            </div>                            
4

3 に答える 3

1

html と php コードを移動するだけです。$rowwhile ループの内側に存在し、while ループの外側にあります。

<?php
        $mydb = new mysqli('localhost', 'root', '', 'test');
        $sql = "SELECT * FROM test  order by id limit 1 ";
        $result = $mydb->query($sql);
        if (!$result) {
            echo $mydb->error;
        }
        ?>
        <html>
            <head></head>
            <body>
            <?php while( $row = $result->fetch_assoc() ){ ?>
                <div><?php echo $row['test'];?></div>
            <?php 
            }
            $mydb->close ();
            ?>
            </body>
        </html>

これにより、データベースから取得された各行に対して新しい div が作成されます。

于 2013-08-06T20:09:51.767 に答える
0

フェッチする前に接続を閉じています

       $mydb->close ();

その行を削除して、コードの最後に追加してください。

html コードを while ループ内に配置します。

 <?php
     $mydb = new mysqli('localhost', 'root', '', 'test');
     $sql = "SELECT * FROM test  order by id limit 1 ";
     $result = $mydb->query($sql);
  if (!$result) {
  echo $mydb->error;
 }
 ?> 
 <html>
 <head>
 </head>
 <body>
 <div>
 <?php
 while( $row = $result->fetch_assoc() ){
 echo $row['test'];
 }
 $mydb->close ();
 ?>
 </div>
 </body>
 </html>
于 2013-08-06T20:09:14.830 に答える
0

$row['test']ブロックの内部をwhile再度配置し、HTML を移動するだけです。

<?php
$mydb = new mysqli('localhost', 'root', '', 'test');
$sql = "SELECT * FROM test  order by id limit 1 ";
$result = $mydb->query($sql);
if (!$result) {
    echo $mydb->error;
}
?>
<html>
<head>
</head>
<body>
<div>
<?php
while( $row = $result->fetch_assoc() ){
    echo $row['test'];
}
$mydb->close ();
?>
</div>
</body>
</html>
于 2013-08-06T20:10:12.693 に答える