Foros del Web » Programando para Internet » PHP »

ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

Estas en el tema de ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina! en el foro de PHP en Foros del Web. Hola queridos amigos, estoy dando mis primeros pasos en PHP, por lo que ahora mas bien mi consulta sera conceptual. estoy realizando un sistema de ...
  #1 (permalink)  
Antiguo 02/12/2010, 20:53
 
Fecha de Ingreso: julio-2010
Ubicación: Chillan, Chile
Mensajes: 60
Antigüedad: 9 años, 4 meses
Puntos: 1
Pregunta ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

Hola queridos amigos, estoy dando mis primeros pasos en PHP, por lo que ahora mas bien mi consulta sera conceptual.
estoy realizando un sistema de control de socios, utilizo mysql como BD, para ingresar datos a la BD desde php no tengo ningun problema, y para realizar búsquedas tampoco.
el problema que tengo es el siguiente, primero que nada tengo separado por capaz la programación: La vista, el controlador y el modelo (o viceversa :))

mi Vista que es la pagina de Busqueda se llama EditarSocio.php(Vista), esta contiene un formulario que envia los datos de la busqueda a un controlador que llamo EditarSocioControlador.php(Controlador) y este a su ves crea un objeto SocioDAO.php(Modelo) que es el que realiza la busqueda en la base de datos.

mi problema es que no se como capturar la consulta y desplegarla en la vista, ya que por ahora solo se enviar datos por formulario.

si alguien pudiera ayudarme con los pasos y complementarlo con con codigo seria genial.

de antemano muchas gracias!!!
  #2 (permalink)  
Antiguo 03/12/2010, 07:43
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 11 años, 5 meses
Puntos: 35
Respuesta: ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

estemmm, si puedes ingresar datos en la bd, lo haces con un mysql_query verdad. pues cuando ejecutas un select, la funcion mysql_query devuelve un resulset, un conjunto de registros, puedes acceder a los registros con mysql_fetch_array recorriendolos con un bucle. Respetando el patron de diseño MVC, el controlador debe usar un metodo del modelo que traiga los registros, ese conjunto de registros, lo retornas a la capa de Vista.
Finalmente en la vista simplemente con una iteración los muestras en pantalla.
Código PHP:
//en controlador
$resultset $miModelo->traerRegistros();

//en Vista
while ($reg mysql_fetch_array($resulset)){
      echo 
$reg['nombreCampo1'];
      echo 
$reg['nombreCampo2'];
      echo 
'<br>';

__________________
I am Doyle please insert code.
  #3 (permalink)  
Antiguo 03/12/2010, 11:42
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 10 años, 3 meses
Puntos: 44
Respuesta: ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

muy buena explicacion doylelives :D jejejejeej me dejas de a 1000 xD
  #4 (permalink)  
Antiguo 03/12/2010, 12:52
 
Fecha de Ingreso: julio-2010
Ubicación: Chillan, Chile
Mensajes: 60
Antigüedad: 9 años, 4 meses
Puntos: 1
Exclamación Respuesta: ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

Cita:
Iniciado por doylelives Ver Mensaje
estemmm, si puedes ingresar datos en la bd, lo haces con un mysql_query verdad. pues cuando ejecutas un select, la funcion mysql_query devuelve un resulset, un conjunto de registros, puedes acceder a los registros con mysql_fetch_array recorriendolos con un bucle. Respetando el patron de diseño MVC, el controlador debe usar un metodo del modelo que traiga los registros, ese conjunto de registros, lo retornas a la capa de Vista.
Finalmente en la vista simplemente con una iteración los muestras en pantalla.
Código PHP:
//en controlador
$resultset $miModelo->traerRegistros();

//en Vista
while ($reg mysql_fetch_array($resulset)){
      echo 
$reg['nombreCampo1'];
      echo 
$reg['nombreCampo2'];
      echo 
'<br>';


Doylelives, claro entiendo la solucion pero como traspaso a la vista el resultado de mi consulta

mira este es mi codigo, espero se entienda

// en el archivo EditarSocio.php tengo lo que seria la Vista
en el puedo buscar un socio de la cooperativa por rut(aca en chile es el numero unico de cada ciudadano)

Código PHP:
Ver original
  1. <body>
  2.  
  3. <table width="700" eight="500" border="0" align="center" cellpadding="0" cellspacing="0">
  4.    
  5.     <form id="form1" name="form1" method="post" action="../Persistencia/Controlador/EditarSocioControlador.php" onsubmit="return validarCampos()">
  6.         <p>&nbsp;</p>
  7.         <table width="341" border="1" align="center">
  8.           <tr>
  9.             <td width="72">Rut</td>
  10.             <td width="253"><label>
  11.               <input type="text" name="rut" id="rut" />
  12.               <input type="submit" name="buscar_rut" id="buscar_rut" value="   Buscar   "  />
  13.             </label></td>
  14.           </tr>
  15.          
  16.         </table>
  17.     </form>
  18. </table>
  19. </body>
este formulario ejecuta el archivo "EditarSocioControlador.php" que seria el archivo controlador
el cual crea un nuevo objeto SocioDAO.php, este objeto posee el metodo buscar_socio_por_rut()
que realiza la consulta en la base de datos

Código PHP:
Ver original
  1. <?php
  2. $rut=$_POST['rut'];
  3. //verificar el rut ingresado
  4. echo "el rut ingresado es el $rut";
  5. //crear nuevo objeto que accede a la base de datos
  6. include("../DAO/SocioDAO.php");
  7. $socio_DAO=new SocioDAO();
  8. //buscar en la base de datos
  9. $socio_DAO->buscar_socio_por_rut($rut);
  10.  
  11. $resultado_busqueda_RUT=$socio_DAO->buscar_socio_por_rut($rut);
  12. //pasar a un arreglo la respuesta
  13. $row=mysql_fetch_array($resultado_busqueda_RUT);
  14. //imprimir el nombre del rut ingresado, es correcto por lo tanto la consulta es correcta
  15. echo $row['nombres'];
  16. //imprimo un mensaje si fue encontrado el rut
  17. if($row=!NULL){
  18.     echo"SI se encontro al socio";
  19. }else{
  20.     echo"NO se encotro al socio";
  21. }
  22. echo "<script lenguaje= 'javascript'>;
  23.      location.href= '../../Vistas/menuPrincipal.php';
  24.      </script >";
  25. echo "<script type=\"text/javascript\">alert(\" el socio fue ingresado correctamente\");    </script>";
  26. ?>
finalmente te muestro el archivo SocioDAO.php que es el que tiene el metodo buscar_socio_por_rut(); y realiza la consulta.
Código PHP:
Ver original
  1. <?php
  2. function buscar_socio_por_rut($rut_a_buscar){
  3.     $base_datos="csap";
  4.     $tabla="socio";
  5.     $conexion= mysql_connect("localhost", "kryzpo23", "xxx");
  6.     mysql_select_db($base_datos, $conexion);
  7.     @mysql_query("SET NAMES 'utf8'");
  8.     return $resultado=mysql_query("SELECT * FROM socio WHERE rut= '$rut_a_buscar'",$conexion);
  9. }
  10. ?>

bueno eso es todo lo que tengo, si pudieras explicar en mi codigo la solucion te agradeceria mucho, de antemano muchas gracias.
  #5 (permalink)  
Antiguo 03/12/2010, 13:25
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 11 años, 5 meses
Puntos: 35
Respuesta: ayuda porfavor, quiero cargar resultados de busqueda en la misma pagina!

pues cuando el controlador posea los datos a mostrar debe de alguna manera llamar a la vista , para que esta muestre el contenido de sus variables, podria usar un include para que incluya en archivo de la vista.
Un ejemplo muy practico que te va a aclarar las dudas, que surgan.
http://www.librosweb.es/symfony/capi...atron_mvc.html
y mi tambien me ayudó en su momento.
__________________
I am Doyle please insert code.

Etiquetas: formulariosenphp, mysql
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 04:17.