Ver Mensaje Individual
  #27 (permalink)  
Antiguo 27/09/2011, 09:12
alavaros
 
Fecha de Ingreso: diciembre-2008
Mensajes: 116
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Parse error: syntax error, unexpected $end in...

Al hilo de lo anterior, os pongo el fallo que me da ahora, os paso también los códigos:
index.php
Código PHP:
Ver original
  1. <?php
  2. $_SESSION['activo'] = 'index';
  3.  
  4. require_once("funciones/avanzadasBD.php");
  5. $noticias = traer_noticias(4);
  6. ?>
  7. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  8.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  9. <html xmlns="http://www.w3.org/1999/xhtml">
  10.     <head>
  11.         <?php include_once "comun/head.php"; ?>
  12.     </head>
  13.     <body>
  14.         <div id="web">
  15.             <?php include_once "comun/cabecera.php"; ?>
  16.             <div id="menu">
  17.                 <?php include_once "comun/menu.php"; ?>
  18.             </div>
  19.             <div id="pagina">
  20.                 <div id="borde">
  21.                     <div id="contenido">
  22.                         <!-- Showcase -->
  23.                         <div id="showcase" class="showcase">                           
  24.                             <?php
  25.                                 foreach ($noticias as $fila) {?>
  26.                                     <div class="showcase-slide">
  27.                                         <div class="showcase-content">
  28.                                             <img src="<?php echo $fila[1]; ?>"/>
  29.                                         </div>
  30.                                         <div class="showcase-caption">
  31.                                             <b><?php echo $fila[2]; ?></b><br/>
  32.                                             <?php echo $fila[3]; ?>
  33.                                         </div>
  34.                                     </div>
  35.                                 <?php
  36.                                 }
  37.                             ?>                         
  38.                         </div>
  39.                         <!-- Showcase -->                                  
  40.                         <!-- Noticias -->
  41.                         <div id="noticias_index">
  42.                         <?php
  43.                             $cont = 1;
  44.                             foreach ($noticias as $fila) {
  45.                                 if (($cont%2)==0)
  46.                                     $class = 'nt_par';
  47.                                 else
  48.                                     $class = 'nt_impar';
  49.                             ?>
  50.                                 <div id="noticia_index" class="<?php echo $class; ?>">
  51.                                     <div id="nt_img"><img src="<?php echo $fila[1]; ?>" style="width:134px; height:90px;"></div>
  52.                                     <div id="nt_fec"><?php echo date_format(date_create($fila[5]), 'd-m-Y'); ?></div>
  53.                                     <div id="nt_tit"><?php echo $fila[2]; ?></div>
  54.                                     <div id="nt_res"><?php echo $fila[3]; ?></div>
  55.                                 </div>
  56.                             <?php
  57.                             $cont++;
  58.                             }
  59.                         ?>
  60.                         </div>
  61.                         <!-- Noticias -->
  62.                     </div>
  63.                     <div id="lateral">
  64.                         <?php include_once "comun/lateral.php"; ?>
  65.                     </div>
  66.                 </div>
  67.             </div>
  68.             <div id="pie"></div>
  69.         </div>
  70.     </body>
  71. </html>
traer_noticias($limite)
Código PHP:
Ver original
  1. function traer_noticias($limite){
  2.     $conn = conectarBD();
  3.    
  4.     $sql = "SELECT * FROM `noticias` ORDER BY `nt_fecha` DESC LIMIT 0 , ".$limite;
  5.     $idx = query($sql);
  6.    
  7.     return $idx;
  8.    
  9.     desconectarBD($conn);
  10. }
conectarBD()
Código PHP:
Ver original
  1. // Creación de una nueva conexión a la base de datos.
  2. function conectarBD(){
  3.     $resultado=false;    
  4.     // Conexion con el servidor bbdd
  5.         $conn = mysql_connect('localhost', 'db_user', 'db_user_pass') or die("No se pudo conectar, por favor recargue la página");
  6.     // Seleccion de bbdd
  7.     if ($conn != false)
  8.         $resultado=mysql_select_db('db');    
  9.     //Necesario para que se vean todos los acentos bien, sin necesidad de escribir &oacute, ...
  10.     mysql_query("SET NAMES 'utf8'");    
  11.     // Si todas las operaciones terminaron satisfactoriamente, devolver recurso.
  12.     if($resultado)
  13.         $resultado=$conn;
  14.    
  15.     return $resultado;
  16. }
query()
Código PHP:
Ver original
  1. //Ejecutar consulta
  2. function query($sql) {
  3.     $resultado = false;
  4.     $idx = mysql_query($sql) or die ("Fallo al ejecutar");
  5.    
  6.     //Si es un SELECT
  7.     if ($idx && !is_bool($idx)) {
  8.         while ($row = mysql_fetch_array($idx, MYSQL_BOTH))
  9.             $resultado[] = $row;
  10.         mysql_free_result($idx);
  11.     //Si es un INSERT
  12.     } else if ($idx) {
  13.         $resultado = true;
  14.     }
  15.  
  16.     return $resultado;
  17. }

Pues me da "Fallo al ejecutar", eso está en la funcion query(), y como antes tan solo sucede en Windows en modo local, ni en Ubuntu local, ni en el servidor web fallan. ¿Alguna idea?

Saludos