1. ¿Buscando un Banco para abrir tu primera cuenta de ahorros? Revisa nuestro comparativo de cuentas cero mantenimiento haciendo clic aquí.
    Ocultar anuncio

Busqueda en una tabla MySQL

Publicado en 'Webmasters' por tirengarfio, 5 Nov 2008.





  1. tirengarfio

    tirengarfio Miembro nuevo

    Registro:
    5 Nov 2008
    Mensajes:
    17
    Likes:
    0




    Saludos,
    tengo la siguente tabla MySQL:
    ----------------------
    nombre | apellido
    ----------|-----------
    Juan | Mendez
    Juan | Garcia
    ---------------------
    Tengo además el siguiente codigo, que pretendo que saque en la ventana de mi navegador las dos filas que contengan "Juan" en el campo "nombre", pero no lo hace... Me saca las dos veces la primera fila (Juan Mendez)
    alguna idea?
    Código:
    <html> 
    <head> 
    </head> 
    <body> 
    
    <?php 
    // nos conectamos al servidor mysql. 
    mysql_connect("localhost", "root", "") OR die(mysql_error()); 
    // seleccionamos la base de datos "ejemplo". 
    mysql_select_db("ejemplo") OR die(mysql_error());  
    
    $result = mysql_query("select * from clientes where nombre='Juan'") OR die(mysql_error()); 
    $row = mysql_fetch_array($result); 
    echo $row["nombre"]; 
    echo "<br>";  
    echo $row["apellido"]; 
    
    $result = mysql_query("select * from clientes where nombre='Juan'") OR die(mysql_error()); 
    $row = mysql_fetch_array($result); 
    echo $row["nombre"]; 
    echo "<br>";  
    echo $row["apellido"]; 
    
    ?> 
    </body> 
    </html>
    Ciao
    Javi
     


  2. eMliveD

    eMliveD Moderador Global

    Registro:
    12 Dic 2006
    Mensajes:
    1,412
    Likes:
    599
    En tu codigo coge las 2 veces el mismo registro, al no indicarle un limite u orden en particular.

    Aqui te dejo el codigo que debería funcionar, y sería mejor que si quieres mostrar varios registros uses el WHILE ;)

    PHP:
    <html> 
    <head> 
    </head> 
    <body> 

    <?php 
    // nos conectamos al servidor mysql. 
    mysql_connect("localhost""root""") OR die(mysql_error()); 
    // seleccionamos la base de datos "ejemplo". 
    mysql_select_db("ejemplo") OR die(mysql_error());  

    _RESTULT mysql_query("select * from clientes where nombre='Juan'") OR die(mysql_error()); 
    while(
    _ROW mysql_fetch_array(_RESTULT)){
       echo 
    _ROW[nombre].'<br/>'._ROW[apellido];
    }
    ?> 
    </body> 
    </html>
    edito: no se por que pero no al poner el simbolo del dolar se borra la palabra completa :S...

    cambias: _RESULT por (dolar)RESULT y _ROW por (dolar)ROW
     
    Última edición: 5 Nov 2008
  3. tirengarfio

    tirengarfio Miembro nuevo

    Registro:
    5 Nov 2008
    Mensajes:
    17
    Likes:
    0
    Hola,

    gracias por tu respuesta! de todos modos sabes que tendria que añadir/quitar de mi codigo para que se visualizasen tanto "Juan Garcia" como "Juan Mendez"?
     
  4. adon570

    adon570 Suspendido

    Registro:
    25 Oct 2008
    Mensajes:
    60
    Likes:
    0
    Pones dos veces buscar, por eso te muestra dos veces el registro #1, enves de que te muestre el siguiente registro. quita el segundo "$result = mysql_query("select * from clientes where nombre='Juan'") ...."