Загрузка и отображение фото

Загружаю на сервер фото через форму, потом функцией вывожу




public function address_image($id,$name, $width='200'){

         $path = 'image'. DIRECTORY_SEPARATOR . 'address_img/';                       

        if(file_exists($path.$id.'_address.jpg'))

        return CHtml::image($path.$id.'_address.jpg',$name,

            array(

                    'width'=>$width,

                   // 'class'=>$class,

                ));

            else

                return CHtml::image('/address_img/noimage.gif','No photo',

                    array(

                            'width'=>$width,

                           // 'class'=>$class

                        ));

    }

    



в форме пишу:




<?php echo $form->labelEx($model,'icon'); ?>

   

 <? echo $this->address_image($model->id, $model->name, '200') ?> //вывод картинки по id

    

    <?php  

     $path = 'images' . DIRECTORY_SEPARATOR . 'address_img/';

    if(file_exists($path.$model->id.'_address.jpg'))

    {

    echo '<div class="row">';

    echo $form->labelEx($model,'del_img'); 

    echo $form->checkBox($model,'del_img' );   

    echo '</div>';

     }

    ?> 

    <? echo '<br />' ?>

    

    <?php echo CHtml::activeFileField($model, 'icon'); ?>



проверку проходит, выводит чек бокс для удаления. но не отображает картинку. выводит только noimage

в view в CDetailView добавил строку для вывода:


array(

            'label'=>'Photo',

            'type'=>'raw',

            // If image exests- show image, else show no photo image

           'value'=> $this->address_image($data->id, $data->name),

            ),

что с этим можно сделать?

По всей видимости, file_exists() не находит картинку, вот такой вариант должен помочь:


file_exists(Yii::getPathOfAlias('webroot') . '/' . $yourPath);

спасибо! теперь работает