【问题标题】:image slider is not working properly for no_image图像滑块不适用于 no_image
【发布时间】:2020-06-18 04:35:09
【问题描述】:

我有图像滑块显示用户上传的图像。每个用户必须上传至少 1 张图片,最多 4 张作为他的兴趣。上传图片 1 是强制性的。休息哪个用户没有上传保存为 no_image.jpg 文件。

如果有人上传 1 张图片,它会重复 image1 2 次。它工作正常,它的显示方式还可以。问题是如果有人上传 2 或 3 张图片,它会重复一些图片 2 次。有点奇怪。

我对编码知之甚少。请有人帮我解决这个问题并完美地工作。非常感谢您的帮助。

编辑: image1 代码未在此处正确显示。我不知道问题。它只是显示image1。那里没有 if 循环。

<div class="product" >
<div class="thumbnail"><img src="<?php echo site_url(); ?>assets/images/adsimages/<?php
                                        $a = 'no_image.jpg';
                                        $b = $post['image2'];
                                        $c = $post['image3'];
                                        $d = $post['image4'];

                                        if ($b != $a) {
                                            echo $post['image2'];
                                        } elseif ($c != $a){
                                            echo $post['image3'];
                                        }elseif ($d != $a){
                                            echo $post['image4'];
                                        }else echo $post['image1']
                                        ?>" ></div>
</div>
<div class="product" >
<div class="thumbnail"><img src="<?php echo site_url(); ?>assets/images/adsimages/<?php
                                        $a = 'no_image.jpg';

                                        $c = $post['image3'];
                                        $d = $post['image4'];

                                        if ($c != $a){
                                            echo $post['image3'];
                                        }elseif ($d != $a){
                                            echo $post['image4'];
                                        }else echo $post['image1']
                                        ?>" ></div>
 </div>
 <div class="product" >
 <div class="thumbnail"><img src="<?php echo site_url(); ?>assets/images/adsimages/<?php
                                        $a = 'no_image.jpg';
                                        $d = $post['image4'];
                                            if ($d != $a){
                                            echo $post['image4'];
                                        }else echo $post['image1']
                                        ?>"></div>
                                </div>

【问题讨论】:

  • 请显示$post里面的值是什么
  • $post 数组包含所有 4 个图像(image1、image2、image3、image4)。 image1 包含不同的图像,因为用户必须上传 image1,因为它是强制性的。其他 3 张图片可能没有上传图片,因为它是可选的。其余保存为 no_image.jpg 图像文件。例如:如果有人上传前 2 张图片。它们被保存为 no_image.jpg 文件。我在这里想要的是滑块仅显示上传的图像。跳过 no_image.jpg 图像。我想你得到了答案。如果你需要什么让我知道。感谢@sauhardnc 的帮助。
  • 所以,如果用户上传了 2 张图片,那么滑块中只需要 3 张图片,对吧? 2用户上传和1 no_image.jpg并忽略重复的no_image.jpg,对吧?
  • 没有。我只想显示用户在该滑块中上传的 2 张图片。我不想显示 no_image.jpg。
  • 感谢您的支持。高度赞赏。 :)

标签: javascript php jquery image slider


【解决方案1】:

您可以使用foreach 显示日期并防止自己重复代码。对于您的问题,您可以取一个空的array 并在每个iteration 上填充它并检查是否存在重复值,如果没有则显示图像,如果是,则不要。

我已经为您的代码编写了一个可能的解决方案,代码本身中提到了 cmets。看看对你有没有帮助。

<?php 
    $imageArr = array(); // make an empty array

    foreach($post as $key => $singleImage){ // loop all the images 

        // if( !in_array($singleImage, $imageArr) ){ // check if current value already exists in array ie no_image 
        if( $key != 'id' && $singleImage != 'no_image.jpg' ) ){ // check if key is not id and its value is not no_image.jpg

            // $imageArr[] = $singleImage; // push the current value in array
?>
            <!-- Your view code here -->
            <div class="product" >
                <div class="thumbnail">
                    <img src="<?php echo site_url(); ?>assets/images/adsimages/$singleImage; ?>" /> 
                </div>
            </div>
<?php 
        }
    } 
?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多