Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/08/2006, 07:49
chcma
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Ya está solucionado, jejeje, era una tontería, en el select, en vez de seleccionar idnoticia, debería haber peusto: imagen.

Y en el $row[] también, jejeje, disculpen las molestias.



Bueno, eso si me funciona, ok perfecto. Me habia equivocado en eso, pero esto era para hacer una prueba, por que tengo una página la cual realmente no me funciona.

Verán tengo una página que muestra noticias, texto y su imagen, ambas está en la BD. Para hacer todo el proceso de mostrar las imagenes y los textos, lo tengo separado en dos capas.

noticias.php (Pagina de presentacion)

capaNegocio/noticiasNegocio.php (Capa de Negocio)


En la capa de negocio tengo lo siguiente:
Código:
<?
header ("Content-type: image/jpeg");
include('configuracion/configuracion.php');
require('capaAccesoBD/accesoBD_5.php');

class noticiasNegocio
{
	private $objBD;
	private $_idnoticia;
	public $errorNegocio;
	
	function __construct($idnoticia){
		global $objBD;
		$this->_idnoticia = $idnoticia;
		try{
			$objBD = new accesoBD_5(SERVIDOR, USUARIO, CLAVE, BASEDATOS);	
		}catch (Exception $ex){
			die($ex);
		}
	}
	
	public function DameTitulo(){
		global $objBD;
		if(!$objBD->ConectarBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}
		
		if (!$objBD->DevuelveSql($resultado, 'select titulo from tnoticias where idnoticia='.$this->_idnoticia)){
			die($objBD->errorBD);
		}

		if(!$objBD->CierraBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}	
		
			foreach($resultado as $fila)
				echo nl2br( $fila['titulo'] );
	}

	public function DameDescripcion(){
		global $objBD;
		if(!$objBD->ConectarBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}
		
		if (!$objBD->DevuelveSql($resultado, 'select descripcion from tnoticias where idnoticia='.$this->_idnoticia)){
			die($objBD->errorBD);
		}

		if(!$objBD->CierraBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}	
		
			foreach($resultado as $fila)
				echo nl2br( $fila['descripcion'] );		
	}


	public function DameImagen(){
		global $objBD;
		if(!$objBD->ConectarBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}
		
		if (!$objBD->DevuelveSql($resultado, 'select imagen from tnoticias where idnoticia='.$this->_idnoticia)){
			die($objBD->errorBD);
		}

		if(!$objBD->CierraBD()){
			$this->errorNegocio = "Error Conexion: ".$objBD->errorBD;
			return false;
		}	
		
			foreach($resultado as $fila)
				echo $fila['imagen'];
	}

}


En la página de presentacion, es decir, donde meustro todo, me muestra bien el texto de las noticias, pero .... la imagen me muestra uan cantidad de caracteres extraños y bueno, no sé por que puede ser, por que en realidad, está igual que en el ejemplo. Solo voy a poner lo qeu considiero más relevante:

Código:
<?
require('capaNegocio/noticiasNegocio.php');
$idnoticia = $_GET['idnoticia'];
$objNegocio = new noticiasNegocio($idnoticia);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>


.... mas cosas de html


            <td width="72%" height="196" bgcolor="#FFFFFF" class="textos"><span class="A_titulos"><? $objNegocio->DameTitulo();?> </span>              <p><strong><? $objNegocio->DameSubTitulo();?></strong></p>
              <p><? $objNegocio->DameDescripcion();?></p>
              </td>


            <td width="28%"><img src="<? $objNegocio->DameImagen();?>" />;</td>


El problema está, que a la hora de mostrarme la imagen, me muestra caracteres extraños en vez de la imagen, y bueno... no sé por que puede ser, en fin, si alguien puede ayudarme, se lo agradecería.

Saludos y espero puedan ver donde tengo el fallo. Gracias.
__________________
Charlie.

Última edición por chcma; 27/08/2006 a las 08:27