Foros del Web » Programando para Internet » PHP »

Comparacion de resultados con If

Estas en el tema de Comparacion de resultados con If en el foro de PHP en Foros del Web. Hola a todos. Mirar quiero comparar si un registro de mysql es igual a un determinado texto. Esto he hecho: Código PHP: Previamente he conectado a mi BD .              ...
  #1 (permalink)  
Antiguo 09/03/2009, 11:05
lamek
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Comparacion de resultados con If

Hola a todos.

Mirar quiero comparar si un registro de mysql es igual a un determinado texto.
Esto he hecho:

Código PHP:
Previamente he conectado a mi BD.
            
               
$result1 mysql_query("SELECT nuevo  FROM contacto");
               
$nuevo mysql_fetch_array($result1);
            
        if (
$nuevo == "Si"){
                      
LoQUESEA
                

Como lo puedo hacer, esque no me hace nada. En LOQUESEA ahi tengo el codigo.


A ver si sabbeis alguno,

Saludos.
  #2 (permalink)  
Antiguo 09/03/2009, 11:11
 
Fecha de Ingreso: diciembre-2006
Mensajes: 20
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Comparacion de resultados con If

$nuevo es un arrays una coleccion de dato que esta encasillada por string es una arrays asociativo.
  #3 (permalink)  
Antiguo 09/03/2009, 11:12
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Y que debo hacer?
  #4 (permalink)  
Antiguo 09/03/2009, 11:18
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Comparacion de resultados con If

Referenciar el campo "nuevo" en la matriz $nuevo:

Código php:
Ver original
  1. if($nuevo['nuevo'] == 'Si')
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 09/03/2009, 11:26
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Sigue sin ir. No hace nada. Os enseño lo que he hecho ahora.

Código PHP:

            
                $nuevo 
mysql_query("SELECT FROM contacto WHERE nuevo");
            
                if(
$nuevo['nuevo'] == 'Si'){
                                          
LODEMAS 

                           

  #6 (permalink)  
Antiguo 09/03/2009, 11:37
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Comparacion de resultados con If

No puede funcionar porque modificaste tu consulta, donde no lees campos y el filtro es incorrecto, porque debiera ser WHERE campo = 'algo'
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 09/03/2009, 11:38
 
Fecha de Ingreso: diciembre-2006
Mensajes: 20
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Comparacion de resultados con If

Cita:
Iniciado por lamek Ver Mensaje
Sigue sin ir. No hace nada. Os enseño lo que he hecho ahora.

Código PHP:

            
                $nuevo 
mysql_query("SELECT FROM contacto WHERE nuevo");
            
                if(
$nuevo['nuevo'] == 'Si'){
                                          
LODEMAS 

                           


el query tambien esta mal referenciado


debe ser algo como

select * from contacto where nuevo = si ;

o algo parecido

depende tu db

pero asi como esta ahy esta mal puesto :)
  #8 (permalink)  
Antiguo 09/03/2009, 12:00
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Me sigue sin ir, sabeis ponerme algun ejemplo, esque me estoy volviendo loco.

Esque ahora lo que pngo creo que deberia ir.
Código PHP:
                $result mysql_query("SELECT id, nombre, correo, asunto, fecha, hora, mensaje, nuevo  FROM contacto");
                
            
                if(
$result['nuevo'] == 'Si'){ 
Igual es porque he puesto : if(isset ($_POST["id"])) antes de lo que os he dicho, pero esto lo utilizo para borrar los registros.
  #9 (permalink)  
Antiguo 09/03/2009, 12:12
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Comparacion de resultados con If

Y donde quedo la lectura de la consulta?, porque $result es un identificador que sirve para extraer el contenido con mysql_fetch_row(), mysql_fetch_assoc() o mysql_fetch_array()
__________________
- León, Guanajuato
- GV-Foto
  #10 (permalink)  
Antiguo 09/03/2009, 12:13
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Entonces que? añado esto tambien,
$nuevo = mysql_query("SELECT FROM contacto WHERE nuevo");

?

Joe que no se como quereis que lo haga, algun ejemplo please.?
  #11 (permalink)  
Antiguo 09/03/2009, 12:17
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Comparacion de resultados con If

Cambiaste mucho tu codigo entre las diferentes opciones que te estabamos dando, lo que me hace pensar que solo tratas de copiar y pegar para solucionar tu problema. Bueno, te dejo un ejemplo de cada una de las opciones que te sugeri:

- mysql_fetch_row()
- mysql_fetch_assoc()
- mysql_fetch_array()
__________________
- León, Guanajuato
- GV-Foto
  #12 (permalink)  
Antiguo 09/03/2009, 12:22
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Comparacion de resultados con If

yo lo haria así, si la consulta devuelve un solo resultado
Código PHP:
$result1 mysql_query("SELECT nuevo FROM contacto");
$nuevo mysql_result($result1,0);
        if (
$nuevo == "Si"){
                      
LoQUESEA
                

o tambien puedes usar la palabra reservada 'LIMIT' en la consulta.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #13 (permalink)  
Antiguo 09/03/2009, 12:31
 
Fecha de Ingreso: diciembre-2006
Mensajes: 20
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Comparacion de resultados con If

Código PHP:
if(($_POST['id_rut'] != NULL) or ($_POST['password'] != NULL ))
  {   
$db_1 conectar_base_datos($db_name_1$db_user_1$db_pass_1);
  if (
$db_1 != 1)
    {
$sql_tbl_areas mysql_query ("select usuario,pass,nivel_acceso from usuarios",$db_1); 
     
$consulta mysql_num_rows($sql_tbl_areas);
     if(
$consulta )
     { 
$a 1;
       while(
$sql_datos=mysql_fetch_array($sql_tbl_areas))
       {   
       
$password md5($_POST['password']);
       
         if((
$_POST['id_rut'] == $sql_datos[usuario]) and ( $password == $sql_datos['pass']))// aki recien puedes comparar datos despues de sacar todo el arrays asociativo 
asi se hace bro

te dejo un ejemplo espero sirva
  #14 (permalink)  
Antiguo 09/03/2009, 15:02
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Os voy a explicar mejor lo que quiero.
Tengo en la BD una columna que es 'nuevo' como habeis observado, y lo que quiero que si esta tiene un registro que ees 'Si' me lo muestre, en cambio si es 'No' que me diga que no hay nada.

Esque es una administracion de mensajes y los que sean nuevos tendran en el campo de 'nuevo' un Si, y en este sitio se cambia a no cuando se contesta, y eso lo que quiero. NO se si me explico bien, aun asi, gracias por las respuestas.

No se si es algo que tengo yo en todo el codigo, pero esque si os muestro todo igual os moris. Tiene mas de 250 lineas y no es plan de mostraos lo que tengo hecho.

A ver alguna sugerencia mas, he probado lo que decis, he ido a las direcciones que me aconsejais y no me va, desgraciadamente.

Saludos.

Saludos.
  #15 (permalink)  
Antiguo 09/03/2009, 18:33
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Comparacion de resultados con If

ok, en vista de que no fue como decía aqui va otro
Código PHP:
$result1 mysql_query("SELECT nuevo  FROM contacto");
while(
$row=mysql_fetch_array($result1)){
     if (
$row['nuevo'] == "Si"){
          
LoQUESEA;
     }
     else{
          echo 
'no hay nada';
     }

creo que esto es lo que necesitas.

saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #16 (permalink)  
Antiguo 10/03/2009, 11:29
lamek
Invitado
 
Mensajes: n/a
Puntos:
Esque no se si ahora no me va por que los resultados que salen me ssalen en una tabla todos seguidos. Mirar la imagen. Asi salen:


Quiero que haya una separacion entre las dos tablas y los dos resultados claro.
Esque sino parece que no me va.


Alguna solucion.

eits por cierto, Felicidades!!

Me entendeis?

Última edición por GatorV; 10/03/2009 a las 14:08
  #17 (permalink)  
Antiguo 11/03/2009, 09:41
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Comparacion de resultados con If

disculpa por no responder antes pero es que estaba de viaje atentiendo unos asuntos personales, pasando a otro asunto, para lo que necesitas creo que bastará con poner uno o dos <br />

supooniendo que tienes algo como esto
Código PHP:
if ($row['nuevo'] == "Si"){
    
$datos='<tabla>
                <tr>
                    <td>datos</td>
                    ...
                </tr>
                ...
            </table>'
;
    echo 
$datos.'<br/><br/>';

solo es cuestión de agregar los br al final.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #18 (permalink)  
Antiguo 11/03/2009, 10:16
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Hola y gracias por responder.
Ya lo he conseguido. Como al final tengo un while ($row = mysql_fetch_array($result));
he puesto:

Código PHP:
        echo "</table></center><p>";
            echo 
"<p><center><table bgcolor='#6699CC' border = '1'>";
            } while (
$row mysql_fetch_array($result));
            echo 
"</table></center>"

Cierro primero la otra tabla y ahora abro otra. Jejee.

Pero sigue sin hacerme nada lo otro. Cuando es que no es nuevo, me lo sigue mostrando iguial.
  #19 (permalink)  
Antiguo 11/03/2009, 10:38
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Comparacion de resultados con If

no logro entender como esta tu código, si puedes muestra mas para analizarlo y darte una idea o solución.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #20 (permalink)  
Antiguo 11/03/2009, 12:53
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Una parte de mi código la hace falta:

Código PHP:

if(isset ($_POST["id"]))
                
$borrar mysql_query("DELETE FROM contacto WHERE id=".$_POST["id"]."");
                
                
            
$result mysql_query("SELECT id, nombre, correo, asunto, fecha, hora, mensaje, nuevo  FROM contacto");
            
            
            
$row mysql_fetch_array($result);
            if (
$row['nuevo'] == 'Si'){
                
            echo 
"<center><table bgcolor='#6699CC' border = '1'> ";
            do{
            
            
            echo 
"<tr> ";
            echo 
"<td><b>Id </b></td>  ";
            echo 
"<td><b>Nombre</b></td>  ";
            echo 
"<td><b>Email</b></td>  ";
            echo 
"<td><b>Nuevo</b></td>  ";
            echo 
"<td><b>Asunto</b></td>  ";
            echo 
"<td><b>Día</b></td> ";
            echo 
"<td><b>Hora del Envío</b></td> ";
            echo 
"<td><b>¿Eliminar?</b></td> ";
            echo 
"</tr> ";
            echo 
"<tr> ";
            echo 
"<td>".$row["id"]."</td>";
            echo 
"<td>".$row["nombre"]."</td> ";
            echo 
"<td>".$row["correo"]."</td> ";
            echo 
"<td>".$row["nuevo"]."</td> ";
            echo 
"<td>".$row["asunto"]."</td> ";
            echo 
"<td>".$row["fecha"]."</td> ";
            echo 
"<td><center>".$row["hora"]."</center></td>";
            echo 
"<td><center><form method='post' action='admin.php'><input type='hidden' name='id' value='".$row["id"]."' /><a style='color:#FFFF66' href='#' onclick='javascript:this.parentNode.submit()'>Borrar</a></form></center></td> ";
            
            echo 
"</tr> ";
            echo 
"<tr> ";
            echo 
"<td colspan='7'><b>Mensaje:</b></td> ";
            echo 
"</tr> ";
            echo 
"<tr > ";
            echo 
"<td bgcolor='#990000' colspan='8'><font color='#FFFFFF'><strong><i><p>".$row["mensaje"]."</p></i><strong></font></td>";
            echo 
"</tr> ";
            echo 
"<tr> ";
            echo 
"<form id='respuesta' name='respuesta' method='POST' action='respuesta.php'><td colspan='8'><b>Responder a </b>".$row["correo"]."</td> ";
            echo 
"</tr> ";
            echo 
"<tr> ";
            echo 
"<td colspan='8'><p><center><textarea name='cuerpo' cols='55' rows='7' id='cuerpo'></textarea></p><input type='submit' onClick='' name='submit' value='Enviar' /></center></td></form> ";
            echo 
"</tr>";
            echo 
"<hr>";
            echo 
"</table></center><p>";
            echo 
"<p><center><table bgcolor='#6699CC' border = '1'>";
            } while (
$row mysql_fetch_array($result));
            echo 
"</table></center>";
            
            
            }else{
            echo 
"No hay mensajes nuevos.";
            } 
Haber asi.
  #21 (permalink)  
Antiguo 11/03/2009, 13:40
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Comparacion de resultados con If

hice algunos cambios para que cheques y cuentes que tal, pero según lo veo con esto debe quedar
Código PHP:
if(isset ($_POST["id"]))
    
$borrar mysql_query("DELETE FROM contacto WHERE id=".$_POST["id"]."");

$result mysql_query("SELECT id, nombre, correo, asunto, fecha, hora, mensaje, nuevo  FROM contacto");
$nada=false;
while(
$row mysql_fetch_array($result)){
    if (
$row['nuevo'] == 'Si'){
        if(!
$nada)
            
$nada=true;
            echo 
'<center><table bgcolor="#6699CC" border = "1">
                     <tr>
                         <td><b>Id </b></td>
                         <td><b>Nombre</b></td>
                        <td><b>Email</b></td>
                        <td><b>Nuevo</b></td>
                        <td><b>Asunto</b></td>
                        <td><b>Día</b></td>
                        <td><b>Hora del Envío</b></td>
                        <td><b>¿Eliminar?</b></td>
                        </tr>
                        <tr>
                        <td>'
.$row["id"].'</td>
                        <td>'
.$row["nombre"].'</td>
                        <td>'
.$row["correo"].'</td>
                        <td>'
.$row["nuevo"].'</td>
                        <td>'
.$row["asunto"].'</td>
                        <td>'
.$row["fecha"].'</td>
                        <td><center>'
.$row["hora"].'</center></td>
                        <td><center><form method="post" action="admin.php"><input type="hidden" name="id" value="'
.$row["id"].'" /><a style="color:#FFFF66" href="#" onclick="javascript:this.parentNode.submit()">Borrar</a></form></center></td>
                    </tr>
                    <tr>
                    <td colspan="8"><b>Mensaje:</b></td>
                    </tr>
                    <tr>
                    <td bgcolor="#990000" colspan="8"><font color="#FFFFFF"><strong><i><p>'
.$row["mensaje"].'</p></i><strong></font></td>
                    </tr>
                    <tr>
                    <form id="respuesta" name="respuesta2 method="POST" action="respuesta.php"><td colspan="8"><b>Responder a </b>'
.$row["correo"].'</td>
                    </tr>
                    <tr>
                    <td colspan="8"><p><center><textarea name="cuerpo" cols="55" rows="7" id="cuerpo"></textarea></p><input type="submit" onClick="" name="submit" value="Enviar" /></center></td></form> ";
                    </tr>
                    <hr>
                    </table></center><br /><br />'
;
    }
}  
if(!
$nada)
    echo 
'no hay nada'
por falta de tiempo, no lo analicé mas a fondo, pero como te dije, confio en que quede con esto

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #22 (permalink)  
Antiguo 11/03/2009, 13:51
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Comparacion de resultados con If

Por fin, jajaja, muchas gracias.

Mira como a quedado. Porsi lo quereis ver. http://lamek.web44.net/Administracion
User: (Ya los he quitado) Pass: (Quitado)

Saludos.

Última edición por lamek; 12/03/2009 a las 08:09
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 14:13.