hola gente, he hecho un visor de imágenes, pero no va....
index.php
Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<!-- Incluimos la hoja de estilos, la libreria jquery y
nuestra libreria de funciones -->
<link rel="stylesheet" href="css/estilos.css" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/funciones.js"></script>
<title>Galería de Imágenes</title>
</head>
<body>
<div id="galeria">
<h1>Mi galería de imágenes</h1>
<?php
function __autoload($class) {
require_once "../clases/" . $class . ".php";
}
?>
<?php
/* Conectamos a la BD para obtener la informacion de
las imagenes que tenemos guardadas */
$conexion = new mysqli('localhost', 'historiador', 'pasado', 'historia');
/*$consulta = "SELECT id, titulo, descripcion, archivo
FROM imagen";*/
$consulta = "SELECT codacontecimiento, imagen FROM imagen";
// Obtenemos el resultado de la consulta
$resultado = $conexion->query($consulta);
// Desplegamos las imagenes con un enlace a su id
while($filas = $resultado->fetch_array(MYSQLI_ASSOC)) {
?>
<a href="visor.php?id=<?php echo $filas['id']; ?>"><img src="http://www.forosdelweb.com/imagen/t-<?php echo $filas['archivo']; ?>" alt="imagen" /></a>
<?php }
?>
</div>
</body>
</html>
visor.php
Código:
<?php
$id = $_GET['id'];
$prev = $id-1;
$sig = $id+1;
$conexion = new mysqli('localhost', 'historiador', 'pasado', 'historia');
$consulta = "SELECT codacontecimiento, imagen FROM imagen WHERE id = $id";
$resultado = $conexion->query($consulta);
$fila = $resultado->fetch_array(MYSQLI_ASSOC);
$consulta = "SELECT min(codacontecimento) as minimo, max(codacontecimento) as maximo FROM imagen";
$resultado = $conexion->query($consulta);
$datos = $resultado->fetch_array(MYSQLI_ASSOC);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Galería de Imágenes - <?php echo $fila['titulo'];?> </title>
<link rel="stylesheet" href="css/estilos.css" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/funciones.js"></script>
</head>
<body>
<div id="contenedor">
<?php
if($id != $datos['minimo']) {?>
<a href="visor.php?id=<?php echo $prev; ?>"><img src="img/back.png" /></a>
<?php }
else {
?>
<img src="img/block.png" alt="Primera imagen" />
<?php }?>
<img id="imgcompleta" src="img/<?php echo $fila['archivo']; ?>" alt="<?php echo $fila['descripcion'];?>" />
<?php if($id != $datos['maximo']){?>
<a href="visor.php?id=<?php echo $sig; ?>"><img src="img/next.png" /></a>
<?php }
else {
?>
<img src="img/block.png" alt="Última imagen" />
<?php }?>
<div id="masinfo"><h4>Información de la imagen <a href="#"><img src="img/add.png" alt="Más información" /></a></h4></div>
<div id="info">
<p>Título: <?php echo $fila['titulo'];?></p>
<p>Descripción: <?php echo $fila['descripcion'];?></p>
</div>
</div>
<div id="galeria-small">
<h3>Mis otras imágenes</h3>
<?php
$cons = "SELECT id, titulo, descripcion, archivo FROM imagen";
$res = $conexion->query($cons);
while($filas = $res->fetch_array(MYSQLI_ASSOC)) {
?>
<a href="visor.php?id=<?php echo $filas['id']; ?>"><img src="img/t-<?php echo $filas['archivo']; ?>" alt="imagen" /></a>
<?php }
?>
</div>
</body>
</html>
el error que me da en visor.php es:
Fatal error: Call to a member function fetch_array() on a non-object in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\galeria\visor.php on line 12
Me estoy volviendo loco, y no se donde está el error. Gracias y Salu2.