-2

<?php?>別のHTMLの次のタグでwhile(mysql_fetch_array($ query))関数呼び出しからPHP変数にアクセスするにはどうすればよいですか?

<body>
<?php
    $sql="select * from $table order by id desc";
    $query=mysql_query($sql) or die(mysql_error());
    while($result=mysql_fetch_array($query)){
    $id=$result[id];
    $subject=$result[subject];
    $subjectpic=$result[subjectpic];
    $content=$result[content];

    //global $id, $subject, $subjectpic, $content; ?
    }
?>
<div class="subject">
<?php
    print"$subject";
?>
</div>
<div class="subjectpic">
<?php
    print"$subjectpic";
?>
</div>
</body>

どうもありがとう!

4

3 に答える 3

3

中括弧を下に動かすだけです

    //global $id, $subject, $subjectpic, $content; ?
?>
<div class="subject">
<?php
    print"$subject";
?>
</div>
<div class="subjectpic">
<?php
    print"$subjectpic";
?>
</div>
<?php
    }
?>
</body>
于 2012-11-10T15:48:07.980 に答える
2

実際には、クロージングブレースをさらに下に置くだけです...

<body>
<?php
    $sql="select * from $table order by id desc";
    $query=mysql_query($sql) or die(mysql_error());
    while($result=mysql_fetch_array($query)){
      $id=$result['id'];
      $content=$result['content'];
?>
  <div class="subject"><?php print $result['subject']; ?></div>
  <div class="subjectpic"><?php print $result['subjectpic']; ?></div>
<?php } ?>
</body>

ただし、このバージョンの方が読みやすくなっています。

<body>
<?php
    $sql="select * from $table order by id desc";
    $query=mysql_query($sql) or die(mysql_error());
    while($result=mysql_fetch_array($query)){
      $id=$result['id'];
      $content=$result['content'];
      sprintf('<div class="subject">%s</div>'."\n",    $result['subject']);
      sprintf('<div class="subjectpic">%s</div>'."\n", $result['subjectpic']);
    }
?>
</body>
于 2012-11-10T15:46:42.183 に答える
0

$subjectその他の変数は、最後の行の値のみを出力します。while配列をループするときに変数の値を反復処理することを計画している場合は、ブロック自体の中で変数を出力/エコーすることを検討してください。

于 2012-11-10T15:40:41.990 に答える