emperor69

سوال - دستور شرطی در php

12 پست در این موضوع

سلام

خیلی با دستورات php آشنایی ندارم از دوستانی که وارد هستند خواهشمندم این مورد رو بررسی بفرمایید:

کد زیر قراره یک تصویر نشون بده. حالا من کدی اضافه کردم که اگر تصویری درکار نبود، تصویر مشخص شده در کد را نشان بده که نمیده. مشکل از کجاست؟

<?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
<div class="moduleItemIntrotext">
<?php if($params->get('itemImage') && isset($item->image)): ?>
<a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> "<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"">
<img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"/>
</a>
<?php endif; ?>

<?php if($params->get('itemIntroText')): ?>
<?php echo $item->introtext ;?>
<?php endif; ?>
</div>
<!-- FORCE IMAGE -->
<!-- Item Image -->
<?php elseif($params->get('itemImage') || $params->get('itemIntroText')): ?>
<div class="moduleItemIntrotext">
<?php if($params->get('itemImage') && isset($item->image)): ?>
<a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> "<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"">
<img class="hovereffect" src="./images/noimage_article.jpg" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?> />
</a>
<?php endif; ?>

<?php if($params->get('itemIntroText')): ?>
<?php echo $item->introtext ;?>
<?php endif; ?>
</div>
<!-- END FORCE IMAGE -->
<?php endif; ?>

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

کدها به نظر قاطی شدن شما کدهای اصلی و دست نخورده اونقسمت رو قرار بدید و مسیر تصویر خودتونم جدا قرار بدید تا بررسی کنیم

Share this post


Link to post
Share on other sites

کد اصلی که تصویر رو نمایش میده اینه:

     <?php if($params->get('itemImage') || $params->get('itemIntroText')): ?>
     <div class="moduleItemIntrotext">
                     <?php if($params->get('itemImage') && isset($item->image)): ?>
                     <a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> "<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"">
                               <img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"/>
                     </a>
                     <?php endif; ?>

               <?php if($params->get('itemIntroText')): ?>
               <?php echo $item->introtext ;?>
               <?php endif; ?>
     </div>
     <?php endif; ?>

اینم تصویرم:

./images/no_image.gif

ممنون

Share this post


Link to post
Share on other sites

این کد رو قرار بدید ببینید چه نتیجه ای میده

  <?php if($params->get('itemImage') || $params->get('itemIntroText')){ ?>
   <div class="moduleItemIntrotext">
   <?php if($params->get('itemImage') && isset($item->image)): ?>
   <a class="moduleItemImage" href="<?php echo $item->link; ?>" title="<?php echo JText::_('K2_CONTINUE_READING'); ?> "<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"">
   <img src="<?php echo $item->image; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($item->title); ?>"/>
   </a>
   <?php endif; ?>

   <?php if($params->get('itemIntroText')): ?>
   <?php echo $item->introtext ;?>
   <?php endif; ?>
   </div>
   <?php }elseif(!$params->get('itemImage') && !isset($item->image)){ ?>
    <div class="moduleItemIntrotext">
    <img src="./images/no_image.gif" alt="" />
    </div>
   <?php } ?>

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

متأسفانه کار نکرد. ارور خاصی هم نمیده. چیزی که در صفحه لود میشه فقط تگ زیر هست و مقداری داخلش نیست:

<div class="moduleItemIntrotext">        </div>

حتی قسمت اول شرط رو حذف کردم دیگه کلا همین کد رو هم لود نکرد. انگار اصلا قسمت دوم شرط رو پردازش نمیکنه

پ.ن: روی لوکال هستم وگرنه دمو میگذاشتم. پوزش...

ویرایش شده در توسط emperor69

Share this post


Link to post
Share on other sites

اگر فایل کامل رو ببینم راحت میشد درست کرد چیز خاصی نداره

احتمال داره تصویری که دادید مسیرش مشکل داشته باشه شما یه تست بگیرید اون قسمتی که تگ تصویر رو نوشتیم کد زیر رو بنویسید

echo 'ok';

اگر زمانی که تصویری ندارید روی صفحه ok بیاد پس درست کار میکنه و مشکل از مسیر تصویر هست

Share this post


Link to post
Share on other sites

فایل اصلی دست نخورده رو پیوست کردم . این کد ok که دادین گذاشتم و کار کرد ولی بازم بعید میدونم مشکل از تصویر باشه چون بجای elseif گذاشتم echo تصویر اومد ولی همیشه نشونش میده و دیگه شرطی نیست!

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

اگر ok رو موقعی که تصویر ندارید روی صفحه چاپ میکنه باید درست باشه

این کد برای یک ماژول هست درسته؟ اگه ماژول هست ماژولش رو برام پیوست کن چک کنم

ویرایش شده در توسط saber

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

مربوط به ماژول K2 content هست. ماژول رو به صورت مجزا پیدا نکردم. وقتی k2 رو به صورت کامل نصب کنید این ماژول هم نصب میشه. شما k2 نصب کنید ماژول هم داخلش هست. همون نسخه ای که استفاده میکنم :

http://yon.ir/jb3m

ممنون

ویرایش شده در توسط emperor69

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

فایل زیر رو دانلود کنید جایگزین همون ماژول کنید به تنظیماتش یه گزینه اضافه کردم در قسمت گزینه های نمایش مطلب همون اول گزینه تصویر پیشفرض مشخص هست

از طریق اون گزینه تصویر پیشفرض رو که میخواین در صورت نبود تصویر نمایش داده بشه انتخاب کنید یه گزینه تصویر هم در تنظیمات هست که اونم باید روی نمایش باشه

mod_k2_content دانلود ● آپلود سنتر انجمن جوملای ایران

ویرایش شده در توسط saber

Share this post


Link to post
Share on other sites

بسیار عالی مثل همیشه ... :auizz3ffy9vla57584x

یه نگاه انداختم به فایلش. محدوده شرط رو انداخته بودین روی تگ <a> بجای <div> ولی اصول کدنویسی مثل کد قبلی بود که دادین. پس چرا قبلا کار نمی کرد؟ (برای اطلاعات عمومی پرسیدم)

Share this post


Link to post
Share on other sites

شرط قبلی یکم اشکال داشت الان شرط رو درست روی قسمتی که باید تصویر نمایش داده بشه قرار دادم برای همین درست کار میکنه

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری