Foros del Web » Programando para Internet » PHP »

Error en el típico sistema de noticias ¬¬

Estas en el tema de Error en el típico sistema de noticias ¬¬ en el foro de PHP en Foros del Web. Bueno, cuando solucione todos los errores prometo hacer un aporte en forosdelweb de este sistema de noticias que esta por todos sitios pero no funciona ...
  #1 (permalink)  
Antiguo 27/10/2008, 09:04
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Error en el típico sistema de noticias ¬¬

Bueno, cuando solucione todos los errores prometo hacer un aporte en forosdelweb de este sistema de noticias que esta por todos sitios pero no funciona en ninguno, ya que he visto a muchisimos usuarios preguntando por el mismo tema y yo soy uno de los que se unen al club.

Aquí va mi pregunta, tengo este error: Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\prueba\editar.php on line 9

y éste es el código:

Código PHP:
<?php

$id
=$_GET[id];

$connect=mysql_connect("localhost","root","password")';

mysql_select_db("bd",$connect);

$result=mysql_query("select * from noticias where id_noticia='
$id'",$connect);

while($row=mysql_fetch_array($result))
{
echo '
<form action="edit.php" method="post">
<
input type="hidden" name="id" value="'.$row[id_noticia].'"><br>
T&#237;tulo noticia:<br>
<input type="text" name="titulo" value="'.$row[titulo].'"><br>
Autor:<br>
<
input type="text" name="autor" value=".$row[autor].'"><br>
Categor&#237;a:<br>
<input type="text" name="categoria" value='.$row[categoria].'"><br>
Escriba el articulo<br>
<textarea name="
articulo" cols="50" rows="10">'.$row[articulo].'</textarea>
<br>
< input type="
submit" value="Editar"><br>
</form>
}
mysql_free_result($result)
mysq_close($connect)
?>

Y aquí la línea 9:
Código PHP:
$result=mysql_query("select * from noticias where id_noticia='$id'",$connect); 

Saludos y gracias por su ayuda

Última edición por karlic0s; 27/10/2008 a las 09:10
  #2 (permalink)  
Antiguo 27/10/2008, 09:13
 
Fecha de Ingreso: octubre-2008
Mensajes: 11
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Error en el típico sistema de noticias ¬¬

Hola Karlic0s,

Prueba recogiendo la variable id con las comillas simples, tambien trata de probar hacer la consulta sin $connect, a lo mejor esto puede solucionar tu problema, en ocaciones a mi cositas como estas me resuelven el incoveniente.

Si no te sirve trata de hacer var_dump a la consulta, para que mires que puede estar sucediendo.
  #3 (permalink)  
Antiguo 27/10/2008, 09:14
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años
Puntos: 16
Respuesta: Error en el típico sistema de noticias ¬¬

tenes un error de sintaxis, fijate las comillas y que estes cerrando bien con ;
  #4 (permalink)  
Antiguo 27/10/2008, 09:14
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Error en el típico sistema de noticias ¬¬

Que tal karlicOs, es mejor separar el código PHP del HTML:
Código php:
Ver original
  1. <?php
  2. //recibimos la variable id enviada en el enlace por GET
  3. $id=$_GET['id'];
  4. //conectamos a la base
  5. $connect=mysql_connect("localhost","root","password");
  6. mysql_select_db("bd",$connect);
  7. $result = mysql_query("select * from noticias where id_noticia='$id'",$connect);
  8. while($row = mysql_fetch_array($result)) {?>
  9. <form action="edit.php" method="post">
  10. <input type="hidden" name="id" value = "<?php echo $row['id_noticia'];?>"><br>
  11. Título noticia:<br>
  12. <input type="text" name="titulo" value= "<?php echo $row['titulo']; ?>"><br>
  13. Autor:<br>
  14. <input type="text" name="autor" value= "<?php echo $row['autor']; ?> "><br>
  15. Categoría:<br>
  16. <input type="text" name="categoria" value= "<?php echo row['categoria']; ?> "><br>
  17. Escriba el articulo<br>
  18. <textarea name="articulo" cols="50" rows="10"><?php echo $row['articulo']; ?></textarea>
  19. <br>
  20. < input type="submit" value="Editar"><br>
  21. </form>
  22. <?php}
  23. mysq_close($connect);
  24. ?>

Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #5 (permalink)  
Antiguo 27/10/2008, 09:17
 
Fecha de Ingreso: octubre-2008
Mensajes: 102
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Error en el típico sistema de noticias ¬¬

prueba:

$result=mysql_query("select * from noticias where id_noticia='".$id."'",$connect);
  #6 (permalink)  
Antiguo 27/10/2008, 09:23
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Error en el típico sistema de noticias ¬¬

ahhh karlicOs, se me pasó por alto el error estaba es esta línea
Código php:
Ver original
  1. $connect = mysql_connect("localhost","root","password")';
Tenias esa coma de mas, sin embargo el código que te deje te debe funcionar sin problemas.



Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #7 (permalink)  
Antiguo 27/10/2008, 09:28
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años
Puntos: 16
Respuesta: Error en el típico sistema de noticias ¬¬

a mi personalmente no me gusta separar el codigo html de php, porque es mas dificil ver los errores, por ejemplo esta funcion la hago para un listado, para conectarme a la base de datos uso un objeto

Código php:
Ver original
  1. function createListEvent($data){
  2.             global $DbConn;
  3.             global $permiso_;
  4.             $nomMes = calendario::switchMes($data['mes']);
  5.             //buscamos los eventos que coincidan con la fecha
  6.             //en la fecha se puede especificar el dia para que devuelva un solo evento
  7.             //pero tambien permite buscar por mes y año para tomar todo los registros del mes
  8.             //ahora vamos a comprobar que no se este pidiendo el dia
  9.             if(isset($data['dia'])){
  10.                 $fechaSqlSearch = $data['dia'].'/';
  11.             }
  12.             $fechaSqlSearch .= $data['mes'] . '/' . $data['anio'];
  13.            
  14.             //generamos la consulta sql
  15.             $sql = "SELECT * FROM eventos WHERE fecha LIKE";
  16.             if(isset($data['dia'])){$sql .="'$fechaSqlSearch%'";}else{$sql .="'%$fechaSqlSearch%'";}
  17.            
  18.             if(isset($data['event']['tipo'])){$sql.=" AND tipo='".$data['event']['tipo']."'";}
  19.            
  20.             $res = $DbConn->query($sql);
  21.                 $i = 0;
  22.                 while ($arr = $DbConn->fetchArray($res)){
  23.                         $Eventos[$i] = $arr;
  24.                         $i++;
  25.                     }
  26.             //con esto tendriamos que obtener una array con los listado
  27.             $cantEvent = count($Eventos);
  28.             $html = '
  29.                     <!--     ************************************************************
  30.                          ************************************************************
  31.                                             LISTADO DE EVENTOS
  32.                          ************************************************************
  33.                          ************************************************************-->
  34.                     <div class="EditEvent"> ';
  35.             $html .= '
  36.                         <h1> Eventos de '.$nomMes. '</h1>';
  37.             $selfDir = $_SERVER['PHP_SELF'];
  38.                 for($i=0;$i<$cantEvent;$i++){
  39.                     $Eventos[$i][3]=samucode($Eventos[$i][3]);
  40.                     $html .= '
  41.                             <!-- ****************************************************
  42.                                     HEADER
  43.                                 *****************************************************-->   
  44.                                 <div class="header">
  45.                                     <div class="Field">
  46.                                         Fecha: <span>'.$Eventos[$i][1]. '</span>
  47.                                     </div>                                                                  <!-- /field -->
  48.                                     <div class="Field">
  49.                                         Tipo de Evento: <span>'.$Eventos[$i][2]. '</span>
  50.                                     </div>                                                                  <!-- /field -->
  51.                                 </div>                                                                  <!-- /header -->
  52.                             <!-- ****************************************************
  53.                                     BODY
  54.                                 *****************************************************-->           
  55.                                     <div class="body">
  56.                                         <div> '.$Eventos[$i][3]. '</div>
  57.                                     </div>                                                              <!-- /body -->
  58.                                
  59.                             <!-- ****************************************************
  60.                                     FOOTER
  61.                                 *****************************************************-->                                   
  62.                                 <div class="botones">
  63.                                     <div class="contenido">
  64.                                         <a href="'.ROOT_PATH.'include/htdos/contact.php?ref='.$selfDir.'&event='.$Eventos[$i][0].'">Mas Info </a>
  65.                                         <a href="'.ROOT_PATH.'include/htdos/eventos.php?ref='.$selfDir.'&event='.$Eventos[$i][0].'&action=Subscribe">Anotarme </a>
  66.                                     ';
  67.                     if($pemiso_ <900){
  68.                         $html .='      
  69.                                         <a href="'.ROOT_PATH.'include/htdos/eventos.php?fecha='.$Eventos[$i][1].'&event='.$Eventos[$i][0].'&action=Edit">Editar </a>
  70.                                         <a href="'.ROOT_PATH.'include/htdos/eventos.php?ref='.$selfDir.'&event='.$Eventos[$i][0].'&action=Delet">Eliminar </a>
  71.                                 ';
  72.                     }
  73.                     $html .=         '
  74.                                     </div>                                                              <!-- /contenido -->
  75.                                 </div>                                                                  <!-- /botones -->';    
  76.                 if($data['event']['link']=='add'){
  77.                         $html .='       <a href="'.ROOT_PATH.'include/htdos/eventos.php?addEvent='.$Eventos[$i][1].'">Agregar otro evento </a>';
  78.                
  79.                 }              
  80.             }  
  81.             $html .= '
  82.                     </div>                                                                   <!-- /EditEvent -->';
  83.             return $html;
  84.         }
  #8 (permalink)  
Antiguo 27/10/2008, 09:52
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: Error en el típico sistema de noticias ¬¬

Gracias a todos por sus comentarios!

Bueno, de un poco de aquí y de un poco de allá he logrado superar un par de errores (a parte del principal que salía) pero me he vuelto a quedar bloqueado en esto:

Código PHP:
<?php

$id
=$_GET["id"];
$connect mysql_connect("localhost","root","password");

mysql_select_db("db",$connect);

$result=mysql_query("select * from noticias where id_noticia='$id'",$connect);

while(
$row=mysql_fetch_array($result))
{
?>
<form action="edit.php" method="post">
<input type="hidden" name="id" value = "<?php echo $row['id_noticia'];?>"><br>
Título noticia:<br>
<input type="text" name="titulo" value= "<?php echo $row['titulo']; ?>"><br>
Autor:<br>
<input type="text" name="autor" value= "<?php echo $row['autor']; ?> "><br>
Categoría:<br>
<input type="text" name="categoria" value= "<?php echo $row['categoria']; ?> "><br>
Escriba el articulo<br>
<textarea name="articulo" cols="50" rows="10"><?php echo $row['articulo']; ?></textarea>
<br>
< input type="submit" value="Editar"><br>
</form>
<?php}
mysql_free_result($result);
mysql_close($connect);
?>
me dice que hay error en la ultima linea: ?> y me pone esto: Parse error: syntax error, unexpected $end in C:\wamp\www\...

Por cierto, uno de los errores era que ponia mysq_close($connect); en vez de mysql_close($connect);


Algo más para aportar?



Saludos y gracias
  #9 (permalink)  
Antiguo 27/10/2008, 09:53
 
Fecha de Ingreso: octubre-2008
Mensajes: 102
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Error en el típico sistema de noticias ¬¬

No estas cerrando el While()

Edit: AHi lo vi xD

Trata
<?php
}
........

?>

quizas no lo esta tomando
  #10 (permalink)  
Antiguo 27/10/2008, 09:55
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Error en el típico sistema de noticias ¬¬

Cita:
Iniciado por samu22 Ver Mensaje
a mi personalmente no me gusta separar el codigo html de php, porque es mas dificil ver los errores, por ejemplo esta funcion la hago para un listado, para conectarme a la base de datos uso un objeto
Bueno en fin cada quien tiene sus razones, pero si deseamos ahondar y aprovechar al máximo el concepto o los conceptos de Páginas Dinámicas es bueno empezar con cosas tan elementales y básicas como esto.


Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #11 (permalink)  
Antiguo 27/10/2008, 09:57
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: Error en el típico sistema de noticias ¬¬

Solucionado!!

esto:
Código PHP:
<?php
mysql_free_result
($result);
mysql_close($connect);
}
?>

en vez de esto:

Código PHP:
<?php
}
mysql_free_result($result);
mysql_close($connect);
?>

Gracias por la ayuda!!
  #12 (permalink)  
Antiguo 27/10/2008, 09:58
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años
Puntos: 16
Respuesta: Error en el típico sistema de noticias ¬¬

si, pero en un script de 1500 lineas es dificil encontrar una sentencia no cerrada mas si esta mezcalado con codigo html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:22.