我是PHP的新手并且使用了while循环。请点亮这里。
我显示了与图书与作者和isbn编号相关的一些信息。
有两个表:书和作者。书名和ISBN号来自书籍表。作者姓名来自作者表。
这是我糟糕的PHP代码(请不要笑)
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("test") or die(mysql_error());
$result1 = mysql_query("SELECT book_name FROM book where status='1'") or die(mysql_error());
$result2 = mysql_query("SELECT FName FROM author") or die(mysql_error());
$result3 = mysql_query("SELECT book_isbn_number FROM book where status='1'") or die(mysql_error());
?>
<table style="margin-top:40px" border="1" width="100%">
<tr style="background-color:#909F51">
<td>Book List</td>
<?php while($row1 = mysql_fetch_array( $result1 )) { ?>
<td><?php echo $row1['book_name']; ?></td>
<?php } ?>
</tr>
<?php while($row2 = mysql_fetch_array( $result2 )) { ?>
<tr>
<td><?php echo $row2['author_name']; ?></td>
<?php while($row3 = mysql_fetch_array( $result3 )) { ?>
<td><?php echo $row3['book_isbn_number']; ?></td>
<?php } ?>
</tr>
<?php } ?>
</table>
我无法在第三个条件下循环。我知道基本的代码结构是错误的。 有人可以帮助我获得结果。
B_ID
BOOK_NAME
ISBN_NUMBER
状态
A_ID
AUTHOR_NAME
预期产出:
<table width="100%" border="1">
<tr>
<td></td>
<td>Author Name 1</td>
<td>Author Name 2</td>
</tr>
<tr>
<td>Book Name 1</td>
<td>ISBN Number 1</td>
<td>ISBN Number 2</td>
</tr>
<tr>
<td>Book Name 2</td>
<td>ISBN Number 3</td>
<td>ISBN Number 4</td>
</tr>
</table>
答案 0 :(得分:1)
当您选择的列是“book_isbn_number”时,您正在使用$row3['isbn_number']
。尝试将该行更改为<td><?php echo $row3['book_isbn_number']; ?></td>
。在使用旧的,已弃用的mysql_ *函数时,循环本身应该可以正常工作。
答案 1 :(得分:0)
<td><?php echo $row3['isbn_number']; ?></td>
替换为
<td><?php echo $row3['book_isbn_number']; ?></td>
答案 2 :(得分:0)
$result3 = mysql_query("SELECT book_isbn_number FROM book where status='1'") or die(mysql_error());
应
$result3 = mysql_query("SELECT isbn_number FROM book where status='1'") or die(mysql_error());**
或强>
<td><?php echo $row3['isbn_number']; ?></td>
应
<td><?php echo $row3['book_isbn_number']; ?></td>
无论哪个符合您的需求