Foros del Web » Programando para Internet » PHP »

loop parecido a wordpress

Estas en el tema de loop parecido a wordpress en el foro de PHP en Foros del Web. nesecito hacer un loop parecido a wordpress, tengo esto, pero no me funciona Código PHP: $dato_comentario  =  NULL ;    $resultado_consulta_comentarios  =  $db -> query ...
  #1 (permalink)  
Antiguo 07/02/2011, 16:00
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
loop parecido a wordpress

nesecito hacer un loop parecido a wordpress, tengo esto, pero no me funciona
Código PHP:
$dato_comentario NULL;
  
$resultado_consulta_comentarios $db->query("SELECT * FROM comentarios WHERE foto_id = $fotoid LIMIT $inicial, $final");

function 
hay_comentarios($str_alt="Sin comentarios") {
    global 
$db$dato_comentario$resultado_consulta_comentarios;
  

    
  
$dato_comentario $db->fetchNextObject($resultado_consulta_comentarios);

}

function 
idcomentario($arg=0) {
    global 
$db$comentario$dato_comentario;
    if (
$arg==0) echo $dato_comentario->id;
    else if (
$arg==1) return $dato_comentario->id;
}

function 
autor() {
    global 
$db$dato_comentario;
    echo 
$dato_comentario->usuario;
}
function 
el_comentario() {
    global 
$db$dato_comentario;
    echo 
$dato_comentario->comentario;
}
function 
fecha_comentario() {
    global 
$db$dato_comentario;
    echo 
$dato_comentario->fecha;
}
function 
autor_url() {
    global 
$db$dato_comentario;
    echo 
$dato_comentario->url;


y asi intento sacarlo
Código PHP:
    <?PHP while (hay_comentarios()) : ?>
    <li class="' . $oddcomment . '">
    <small class="caps"></small>
    

    <?PHP if (admin()) : ?>
    <a title="Clic para eliminar este comentario" class="derecha eliminar" href="aura.php?accion=eliminar&id=' . $id . '&foto=' . $Foto . '">X</a>');
    <?PHP endif; ?>
    <div class="lim"></div>
    <li>
     <?PHP echo idcomentario();?>
     <div class="autor"><strong><?PHP echo autor();?></strong><em> dijo:</em></div>
     <p><?PHP echo el_comentario();?></p>
     <?PHP //echo fecha_comentario();?>
     <?PHP //echo autor_url();?>
   
 

    </li><!--Fin armado de comentario-->
  <?PHP endwhile; ?>
Alguna ayuda??
  #2 (permalink)  
Antiguo 07/02/2011, 18:44
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: loop parecido a wordpress

De qué forma no te funciona? Te tira algún error?
  #3 (permalink)  
Antiguo 07/02/2011, 18:48
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: loop parecido a wordpress

No me muestra los datos!!!, cuando los uso en
<?PHP while (hay_comentarios()) : ?>


<li>
<?PHP echo idcomentario();?>
<div class="autor"><strong><?PHP echo autor();?></strong><em> dijo:</em></div>
<p><?PHP echo el_comentario();?></p>
<?PHP //echo fecha_comentario();?>
<?PHP //echo autor_url();?>



</li>
<?PHP endwhile; ?>
  #4 (permalink)  
Antiguo 07/02/2011, 19:20
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: loop parecido a wordpress

Puede ser que elproblema sea que hay_comentarios() no devuelve ni verdadero ni falso. debería ver si hay siguiente, si lo hay, devolves verdadero.
  #5 (permalink)  
Antiguo 07/02/2011, 19:33
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: loop parecido a wordpress

intente poner un return TRUE; en
Código PHP:
function hay_comentarios($str_alt="Sin comentarios") {
    global 
$db$dato_comentario$resultado_consulta_comentarios$fotoid$inicial$final;
  
  
$fotoid fotoid();
  
  
$resultado_consulta_comentarios $db->query("SELECT * FROM comentarios WHERE foto_id = $fotoid LIMIT $inicial, $final");

  return 
TRUE;

Mostró los datos pero se repetiand hasta inundarme la pagina.
  #6 (permalink)  
Antiguo 07/02/2011, 19:37
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: loop parecido a wordpress

por eso te decía, si $db->fetchNextObject($resultado_consulta_comentarios ); trae algo, devolvés true, si no false.
  #7 (permalink)  
Antiguo 07/02/2011, 19:52
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: loop parecido a wordpress

Encontré la solucion y descubri cuan torpe soy xD
Código PHP:
function hay_comentarios($str_alt="Sin comentarios") {
    global 
$db$dato_comentario$resultado_consulta_comentarios;
    
  if (
$dato_comentario $db->fetchNextObject($resultado_consulta_comentarios)) return TRUE;
  else return 
FALSE;
    

Antes:
Código PHP:
function hay_comentarios($str_alt="Sin comentarios") {
    global 
$db$dato_comentario$resultado_consulta_comentarios;

$resultado_consulta_comentarios $db->query("SELECT * FROM comentarios WHERE foto_id = $fotoid LIMIT $inicial, $final");

  if (
$dato_comentario $db->fetchNextObject($resultado_consulta_comentarios)) return TRUE;
  else return 
FALSE;
    

Si te fijas cada vez que el bucle ejecutaba la funcion hay_comentarios, volvia a hacer la consulta y por eso siempre devolvia TRUE

Gracias walterdevel, You Rock!

Etiquetas: loop, wordpress
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 12:30.