我正在尝试为我的页面创建一个选项卡,其中每个选项卡显示mysql表格行中的不同字段。我想换一下帐单里的内容。每一行都有不同的id,我想做一个选项卡式设计。数据应该通过表的id来选择。如果我在echo部分中只使用了一个简单的文本,那么这个选项卡就可以正常工作,但是我不能从我的数据库中获取数据。我试过这段代码,但它不能工作。
<?php
if (isset($data[0]) && is_numeric($data[0]) ) {
$content = mysql_fetch_assoc ( mysql_query( "select id,tab_content_one,tab_content_two,tab_content_three,tab_content_four,tab_content_five from db_name where id = $data[0];") );
} else {
$content = mysql_fetch_assoc ( mysql_query( "select id,tab_content_one,tab_content_two,tab_content_three,tab_content_four,tab_content_five from db_name order by id asc limit 1;") );
}
switch($_GET['tabNum']) {
case 1: echo strip_tags($content['tab_content_one']); break;
case 2: echo strip_tags($content['tab_content_two']); break;
case 3: echo strip_tags($content['tab_content_three']); break;
case 4: echo strip_tags($content['tab_content_four']); break;
case 5: echo strip_tags($content['tab_content_five']); break;
}
?>我不知道我的代码出了什么问题。你有什么想法吗?
发布于 2013-05-27 17:38:57
您必须将mysql_fetch_assoc封装到while循环中!对于您的代码,它将如下所示:
if (isset($data[0]) && is_numeric($data[0]) ) {
$sql = "select id,tab_content_one,tab_content_two,tab_content_three,tab_content_four,tab_content_five from db_name where id = $data[0];";
} else {
$sql = "select id,tab_content_one,tab_content_two,tab_content_three,tab_content_four,tab_content_five from db_name order by id asc limit 1;";
}
$result = mysql_query($sql);
while($content = mysql_fetch_assoc($result)){
switch($_GET['tabNum']) {
case 1: echo strip_tags($content['tab_content_one']); break;
case 2: echo strip_tags($content['tab_content_two']); break;
case 3: echo strip_tags($content['tab_content_three']); break;
case 4: echo strip_tags($content['tab_content_four']); break;
case 5: echo strip_tags($content['tab_content_five']); break;
}
}无论如何,我们建议你使用mysql_fetch_assoc,从php 5.5.0开始,将不再推荐使用mysql_PDO扩展。
https://stackoverflow.com/questions/16769972
复制相似问题