1
这个错误没有任何意义。下面是代码块和我的解释。PHP在foreach循环中未定义的索引没有意义
<?php foreach($rows as $value): ?>
<?php echo $value['authorname'] . "<br />\n";?>
<?php echo $value['title'] . "<br />\n";?>
<?php echo $value['rating'] . "<br />\n";?>
<?php echo $value['imagelocation'] . "<br />\n";?>
<div class="block">
<div class="row">
<div class="col-md-4 col-md-8">
<div class="widget-block">
<input id="rate1" value="<?php echo $value['rating'];?>" type="number" class="rating" data-max="5" data-min="0" data-size="sm" data-show-clear="false" readOnly="readOnly">
<a href="<?php echo $value['sellerssite'];?>" target="#"><img class="img-responsive wow fadeInLeftBig animated" data-wow-duration="1.5s" src=<?php echo $value['$imagelocation'];?> alt=<?php echo $value['$authorname'];?>></a>
<br>
<a href="<?php echo $value['sellerssite'];?>" class="btn btn-success" target="_blank">Buy this book</a>
</div>
</div>
<div class="col-md-6 col-md-8">
<div class="section-sub-title">
<article class="section-title-body white">
<h1 class="head-title">Author: <span><?php echo $value['$authorname'];?> -</span> <?php echo $value['$title'];?></h1>
<span class="point-line hidden-xs hidden-sm"></span>
<p>
<?php echo $value['$review'];?>
</p>
</article>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
foreach循环打印出每个变量罚款刚开始之后的echo语句。直到我们深入到有问题的html。
此代码从数据库中提供数据数组,然后根据数据量构建html代码块。在这种情况下,我拉8条记录,所以这个循环创建了8个这个代码块的副本。令人沮丧的是变量“$ rating”会在所有8个块中注入,但其他变量都不会执行,即使它们在回显语句中的页面上正确打印。
也许这是变量中的数据?例如,在解析代码时,评估的第一个变量是$ rating并且可行。下一个是img标签$ imagelocation中的src属性,其实际值为img \ book_covers \ TrueConviction.jpg
是_和。特殊字符并导致该问题?我的返回值是_。 \和空格。
感谢您的任何帮助。
break标签应该像这样echo $ value ['authorname']。 “ \ n”;?> –
您是否尝试过print_r($ rows)并查看它包含了哪些内容......为此,$ rows必须是一个数组......所有您编写的密钥都必须存在于$ value ... – barudo
由于分级输出正确,并且您生成了8个代码块,因此其他输入不正确的事实表明它们是空的。尝试var_dump($ value)或var_dump($ rows)(或print_r作为barudo建议)来查看变量内容。我的猜测是,你要么不选择数据库中的列,要么选择其他名称。 – zozo