为了账号安全,请及时绑定邮箱和手机立即绑定

foreach只显示一条数据

 <?php foreach($res as $row): ?>
	        <tr>
	            <!-- 这里的id和for里面的c1 需要循环出来 -->
	            <td>
	              <input type="checkbox" id="c1" class="check" value="<?php echo $row['id'];?>" />
	              <label for="c1" class="label"><?php echo $row['id'];?></label>
	            </td>
	            <td><?php echo $row['pName']; ?></td>
	            <td><?php echo $row['cName']; ?></td>
	            <td>
	            	<?php echo $row['isShow']==1?"上架":"下架"; ?>
	            </td>
	            <td><?php echo date("Y-m-d H:i:s",$row['pubTime']); ?></td>
	            <td><?php echo $row['iPrice']; ?>元</td>
	            <td align="center">
    				<input type="button" value="详情" class="btn" onclick="showDetail(<?php echo $row['id'];?>,'<?php echo $row['pName'];?>')">
    				<input type="button" value="修改" class="btn" onclick="editPro(<?php echo $row['id'];?>)">
    				<input type="button" value="删除" class="btn" onclick="delPro(<?php echo $row['id'];?>)">
                    <div id="showDetail<?php echo $row['id'];?>" style="display:none;">
	                	<table class="table" cellspacing="0" cellpadding="0">
	                		<tr>
	                			<td width="20%" align="right">商品名称</td>
	                			<td><?php echo $row['pName'];?></td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">商品类别</td>
	                			<td><?php echo $row['cName'];?></td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">商品货号</td>
	                			<td><?php echo $row['pSn'];?></td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">商品数量</td>
	                			<td><?php echo $row['pNum'];?></td>
	                		</tr>
	                		<tr>
	                			<td  width="20%"  align="right">商品价格</td>
	                			<td><?php echo $row['mPrice'];?></td>
	                		</tr>
	                		<tr>
	                			<td  width="20%"  align="right">幕课网价格</td>
	                			<td><?php echo $row['iPrice'];?></td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">商品图片</td>
	                			<td>
	                			<?php 
	                			$proImgs=getAllImgByProId($row['id']);
	                			foreach($proImgs as $img):
	                			?>
	                			<img width="100" height="100" src="uploads/<?php echo $img['albumPath'];?>" alt=""/> &nbsp;&nbsp;
	                			<?php endforeach;?>
	                			</td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">是否上架</td>
	                			<td>
	                				<?php echo $row['isShow']==1?"上架":"下架";?>
	                			</td>
	                		</tr>
	                		<tr>
	                			<td width="20%"  align="right">是否热卖</td>
	                			<td>
	                				<?php echo $row['isHot']==1?"热卖":"正常";?>
	                			</td>
	                		</tr>
	                	</table>
	                	<span style="display:block;width:80%; ">
	                    	商品描述<br/>
	                    	<?php echo $row['pDesc'];?>
	                	</span>
                    </div>
	            
	            </td>
	        </tr>
	       <?php endforeach; ?>
	        <tr>
	        	<td colspan="7">
	        	<?php if($totalRows>$pageSize):?>
	        	    <?php echo showPages($page, $totalPage,"keywords={$keywords}&order={$order}");?>
	        	<?php endif;?>
	        	</td>
	        </tr>

这是foreach的部分,其中$res是分页取出来的数据,打印出来是两条没啥问题,但用foreach则只能显示一条数据,不知道是什么原因,而且下方的页码也不能显示,页码也是可以打印出来的,麻烦老师同学解答一下,实在是没有找到问题在哪里。一直纠结在这个地方。

正在回答

7 回答

 是商品图片下面用到的函数$proImgs=getAllImgByProId($row['id']);还没有定义,可以暂时注释掉。

1 回复 有任何疑惑可以回复我~

foreach((array)$proImgs as $img):你加个(array)试试看

0 回复 有任何疑惑可以回复我~

我来说一下吧,我也遇到了这个问题,问题应该出现在foreach()后面不能加分号,加上不会报错,检查不出来!出现类似问题的可以考虑下这方面原因!!

0 回复 有任何疑惑可以回复我~

求解释~~~~

0 回复 有任何疑惑可以回复我~

 把<?php endforeach;?>放在<div id="showDetail<?php echo $row['id'];?>" style="display:none;">前面,就可以显示两条了。

2 回复 有任何疑惑可以回复我~
#1

qq_蜗牛_35

你是怎么做到的》 ?
2016-05-12 回复 有任何疑惑可以回复我~
#2

qq_蜗牛_35

你不知道就别说说误人子弟
2016-05-12 回复 有任何疑惑可以回复我~
#3

世纪猛男

感谢感谢!
2016-08-17 回复 有任何疑惑可以回复我~

你是怎么弄的啊,我也出现了和你一模一样的问题

0 回复 有任何疑惑可以回复我~

你要check一下你的rows的数据结构 你可以在这段代码之前自己用一个foreach在试验一下,比如我用的是mysqli_fetch_all返回的 以row[数字]对应的值

0 回复 有任何疑惑可以回复我~
#1

Thinker_Ac 提问者

搞定了,谢谢解答。非常感谢
2015-03-31 回复 有任何疑惑可以回复我~
#2

辰小肇 回复 Thinker_Ac 提问者

你是怎么弄的啊,我也出现了和你一模一样的问题
2016-03-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
手把手教你实现电商网站后台开发
  • 参与学习       117285    人
  • 解答问题       1999    个

手把手教你用PHP搭建电子商务平台,由浅入深教你搭建电商系统

进入课程

foreach只显示一条数据

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信