Диагностика пустой страницы. ЕСЛИ проблемы

То, что я пытаюсь сделать, это добавить галерею Elevatezoom и создать эти маленькие квадраты на основе результата, который они получают из MySQL (если для фото1 установлено любое местоположение, то появляется квадрат1, если для фото2 установлено местоположение, квадрат 2 появляется, если фото3 пусто, ничего не появляется (вы поняли)

Проблема в том, что после следующих правок я получаю пустую страницу.

Это весь код.

    <?php use_helper("StaticUrl");?>
<div class="product_image">
<?php
$href = url_for($product->getRouteUrl(ESC_RAW));
if ($sf_context->getActionName() == 'view')
{
$href = static_url_for($product->generatePhotoPath('large',ESC_RAW));
}
?>

<a <?php echo $sf_context->getActionName() == 'view' ? 'class="lightbox"' : ''; ?> href="<?php echo $href;?>" title="<?php echo $product; ?>">
<img src="<?php echo  static_url_for($product->generatePhotoPath(ESC_RAW)); ?>" alt="<?php echo $product; ?>" data-zoom-image="<?php echo  static_url_for($product->generatePhotoPath('large',ESC_RAW)); ?>" class="zoom" style="z-index:999999;" />
</a>

<?php
$resultt  = Doctrine_Query::create()->from("Product")
->select("photo1")
->where("id = ?", $product_id)
->fetchOne(array(), Doctrine_Core::HYDRATE_ARRAY);
if (empty($resultt))
{
return sfView::NONE;
}

?>

<?php if(isset(resultt)){  ?>
<div id="gal1">

<a href="#" data-image="<?php echo  url_for($product->generatePhotoPath("small", 1, ESC_RAW)); ?>" data-zoom-image="<?php echo  url_for($product->generatePhotoPath("large", 1, ESC_RAW)); ?>">
<img id="img_01" src="<?php echo  url_for($product->generatePhotoPath("small", 1, ESC_RAW)); ?>" />
</a>

<?php } ?>

<a href="#" data-image="<?php echo  url_for($product->generatePhotoPath("small", 2, ESC_RAW)); ?>" data-zoom-image="<?php echo  url_for($product->generatePhotoPath("large", 2, ESC_RAW)); ?>">
<img id="img_01" src="<?php echo  url_for($product->generatePhotoPath("small", 2, ESC_RAW)); ?>" />
</a>

<a href="#" data-image="<?php echo  url_for($product->generatePhotoPath("small", 3, ESC_RAW)); ?>" data-zoom-image="<?php echo  url_for($product->generatePhotoPath("small", 3, ESC_RAW)); ?>">
<img id="img_01" src="<?php echo  url_for($product->generatePhotoPath("small", 3, ESC_RAW)); ?>" />
</a>

</div>
</div>

<script src="/js/elevatezoom/jquery.elevatezoom.js" type="text/javascript"></script>

0

Решение

У вас есть ошибка в строке 27 того, что вы опубликовали, которая гласит:

if(isset(resultt)){

Ошибка:

Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead)

При попытке найти ошибки помогает включить все ошибки, чтобы такие вещи появлялись. использование

error_reporting (E_ALL);

в верхней части вашего сценария при разработке.

1

Другие решения

Это решило проблему @Dave. Следующее, с чем я сталкиваюсь, это полностью измененный макет и ошибка elevatezoom js:

     jquery.elevatezoom.js:39
Uncaught TypeError: $(...).elevateZoom is not a function(anonymous function) @ jquery.elevatezoom.js:39

Строка 39+ все, что с этим связано:

 //initiate the plugin and pass the id of the div containing gallery images
$(".zoom").elevateZoom({gallery:'gal1', cursor: 'pointer', galleryActiveClass: 'active', imageCrossfade: true, loadingIcon: 'http://www.elevateweb.co.uk/spinner.gif'});

//pass the images to Fancybox
$(".zoom").bind("click", function(e) {
var ez =   $('.zoom').data('elevateZoom');
$.fancybox(ez.getGalleryList());
return false;
});

Что я упускаю?

Css линии также:

/*set a border on the images to prevent shifting*/
#zoom img{border:2px solid white;}

/*Change the colour*/
.active img{border:2px solid #333 !important;}

Единственное изменение в основном php-файле — это ‘isset’ в ‘null! == ‘

Я также следую инструкциям из галереи&Лайтбокс от http://www.elevateweb.co.uk/image-zoom/examples

0

По вопросам рекламы [email protected]