Saludos comunidad,
Resulta que soy nuevo en YII, y me encuentro entrampado, por lo que pido su gentil colaboración. Resulta que tengo un formulario, que me permite subir una imagen al servidor, y guardar la ruta de la imagen en la base de datos (MySQL), esto lo hago básicamente en el controlador, de la siguiente manera.
*El actionCreate, es lo mismo
Mi problema es que ahora no sé que hacer con ella, y tengo 2 opciones
1) Al ver los datos, que el campo "fotocopiacarnet" me muestre la imagen
2) Al ver los datos, que el campo "fotocopiacarnet" me permita descargar la imagen
(La verdad es que me gustaría aprender a hacer ambas funciones)
si me dirijo al view view.php (que entiendo que es el encargado de mostrar la información) me encuentro con lo siguiente:
Que entiendo que es quién muestra los datos según el ID. Pero, de que forma puedo hacer que visualice la imagen o la descargue, y no sólo, me muestre la URL que está en la DB?
De antemano
Gracias
Resulta que soy nuevo en YII, y me encuentro entrampado, por lo que pido su gentil colaboración. Resulta que tengo un formulario, que me permite subir una imagen al servidor, y guardar la ruta de la imagen en la base de datos (MySQL), esto lo hago básicamente en el controlador, de la siguiente manera.
public function actionUpdate()
{
$model=$this->loadModel($id);
$rut = $model->rut;
$ruta = Yii::getPathOfAlias('webroot').'/images/fotocarnet/';
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['Cliente']))
{
$model->attributes=$_POST['Cliente'];
//Valida Directorio fotocarnet
if(!file_exists(Yii::getPathOfAlias('webroot').'/images/fotocarnet/'))
mkdir(Yii::getPathOfAlias('webroot').'/images/fotocarnet/',0777,true);
//Valida JPG
if($model->fotocopiacarnet->getExtensionName() == "jpg"){
$model->fotocopiacarnet->saveAs(Yii::getPathOfAlias('webroot').'/images/fotocarnet/'.$rut.".jpg", 0777); //Guarda imagen en el directorio
$model->fotocopiacarnet = $ruta.$rut.".jpg"; //Transforma valor a guardar en la DB
}
//Valida PNG
else if($model->fotocopiacarnet->getExtensionName() == "png"){
$model->fotocopiacarnet->saveAs(Yii::getPathOfAlias('webroot').'/images/fotocarnet/'.$rut.".png", 0777); //Guarda imagen en el directorio
$model->fotocopiacarnet = $ruta.$rut.".png"; //Transforma valor a guardar en la DB
}
//Guarda el modelo
if($model->save()){
$this->redirect(array('view','id'=>$model->idcliente));
}
}
$this->render('create',array(
'model'=>$model,
));
}
*El actionCreate, es lo mismo
Mi problema es que ahora no sé que hacer con ella, y tengo 2 opciones
1) Al ver los datos, que el campo "fotocopiacarnet" me muestre la imagen
2) Al ver los datos, que el campo "fotocopiacarnet" me permita descargar la imagen
(La verdad es que me gustaría aprender a hacer ambas funciones)
si me dirijo al view view.php (que entiendo que es el encargado de mostrar la información) me encuentro con lo siguiente:
<?php $this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
'idcliente',
'rut',
'dv',
'nombres',
'aPaterno',
'aMaterno',
'fechanacimiento',
'telefonofijo',
'telefonomovil',
'email',
'direccion',
'niveleducacional',
'fotocopiacarnet',
),
)); ?>
Que entiendo que es quién muestra los datos según el ID. Pero, de que forma puedo hacer que visualice la imagen o la descargue, y no sólo, me muestre la URL que está en la DB?
De antemano
Gracias