Ver Mensaje Individual
  #7 (permalink)  
Antiguo 04/11/2010, 17:43
taoshi
 
Fecha de Ingreso: julio-2009
Mensajes: 117
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Premio para el comentario nºxxx

Cita:
Iniciado por johhan16 Ver Mensaje
bueno si tu con ese while estas trayendo todos los comentarios que hay entonces debes crear una variable que te vaya guardando el numero de comentario y luego en una comparacion revisas si es el comentario que tu dices


Código PHP:
<?php
    
<--- aqui se conecta a la base de datos --->
    
    
$res=mysql_query($sql="SELECT * FROM comentarios ORDER BY id DESC");
$res2=mysql_query($sql="SELECT usuario FROM comentarios WHERE ID=24");

$gana=25//aqui puedes colocar cualquier numero o generarlo de una base de datos
$i=1//variable para revisar el numero de comentario

while($row=mysql_fetch_array($res)){
        
$id $row["id"];
        
$usuario $row["usuario"];
        
$fecha $row["fecha"];
        
$noticia $row["noticia"];
        
$email $row["email"];
        
$imagen $row["imagen"];
        
        if(
$gana == $i ) {
echo 
"te ha tocado el premio";
} else {
echo 
"$noticia<br>
         Comentario numero $id Publicado por <a href='mailto:$email?subject='from $email''><b>$usuario</b></a> el <b>$fecha</b><br>
        <hr>

        "
;
$i++;
}}
        
    
?>
prueba asi y nos dices que tal
Muchas gracias por tu respuesta me a servido de mucho ahora te explico lo que hace: tengo un total de 4 comentarios pero en la base de datos figuran en el campo id como 25, 26, 27, 28

En la variable $gana he puesto el numero 26 (coincidiendo con la consulta previa) y en la variable $i lo he dejado en 1, pero no me daba ni error ni respuesta.

Acto seguido le he cambiado el valor a $gana por un 2 (aun no habiendo ningún 2 en el campo id de la base de datos) y todo lo demás en su sitio y me a mostrado el comentario numero 2 siendo el numero 26 pero el segundo en la lista de comentarios y justo debajo en la posición del comentario número 25 y siendo el número 1 en la lista me muestra el cartelito de “premio”.

Yo lo he dejado asi…
Código PHP:
$res=mysql_query($sql="SELECT * FROM comentarios ORDER BY id DESC");
    
$res2=mysql_fetch_row(mysql_query($sql="SELECT usuario FROM comentarios WHERE ID=26")); 

$gana=26//aqui puedes colocar cualquier numero o generarlo de una base de datos

while($row=mysql_fetch_array($res)){
        
$id $row["id"];
        
$usuario $row["usuario"];
        
$fecha $row["fecha"];
        
$noticia $row["noticia"];
        
$email $row["email"];
        
$imagen $row["imagen"];
        
        if(
$gana == $id ) {
echo 
"te ha tocado el premio";
} else {
echo 
"$noticia<br>
         Comentario numero $id Publicado por <a href='mailto:$email?subject='from $email''><b>$usuario</b></a> el <b>$fecha</b><br>
        <hr>

        "
;
$i++;
}} 
Esto me muestra todos los comentarios y donde debería estar el comentario numero 25 lo sustituye por el mensaje de “te ha tocado un premio”.
Más o menos funciona.

edito: he conseguido que funcione la variable $i no hacia falta y el resultado es este...
Código PHP:
$res=mysql_query($sql="SELECT * FROM comentarios ORDER BY id DESC");
    
$res2=mysql_fetch_row(mysql_query($sql="SELECT usuario FROM comentarios WHERE ID=26")); 

$gana=26//aqui puedes colocar cualquier numero o generarlo de una base de datos

while($row=mysql_fetch_array($res)){
        
$id $row["id"];
        
$usuario $row["usuario"];
        
$fecha $row["fecha"];
        
$noticia $row["noticia"];
        
$email $row["email"];
        
$imagen $row["imagen"];
        
        if(
$gana == $id ) {
echo 
"<div id='hjk'>te ha tocado el premio</div><br>
$noticia<br>
         Comentario numero $id Publicado por <a href='mailto:$email?subject='from $email''><b>$usuario</b></a> el <b>$fecha</b><br>
        <hr>"
;
} else {
echo 
"$noticia<br>
         Comentario numero $id Publicado por <a href='mailto:$email?subject='from $email''><b>$usuario</b></a> el <b>$fecha</b><br>
        <hr>

        "
;
$i++;
}} 



y ahora que vuelvo a mirar el codigo no hace falta la segunda consulta sql
Pd: para que sirve?: $i++

Última edición por taoshi; 04/11/2010 a las 18:05