Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Autorellenar formulario después de consulta

Estas en el tema de Autorellenar formulario después de consulta en el foro de PHP en Foros del Web. Buenas tardes a todos, después de siempre acabar en este foro he decidido participar y ayudar en lo que pueda así como pedir un poco ...
  #1 (permalink)  
Antiguo 09/07/2015, 06:28
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Pregunta Autorellenar formulario después de consulta

Buenas tardes a todos, después de siempre acabar en este foro he decidido participar y ayudar en lo que pueda así como pedir un poco de ayuda en este universo de la programación.

Os cuento el problema:

Tengo una página llamada "busqueda.php" donde al pulsar un botón me realiza una búsqueda en una BD.

Lo que quiero es que al buscar por nombre, en la siguiente página "formulario.php" se me cargue de la BD los valores dentro de los inputs asociados al nombre de la búsqueda.

No sé si ha quedado muy claro...

He visto que se puede hacer con AJAX pero ni idea de esto... PHP todo el que queráis pero esto por días que llevo que no encuentro nada..

P.D si alguno me muestra un ejemplo tiene cervezas aseguradas.


¡¡Muchas gracias a todos!!
  #2 (permalink)  
Antiguo 09/07/2015, 06:51
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

puedes hacer la busqueda en la misma pagina, o envia el form de busqueda a la pagina donde esta el formulario y que se carguen las variables en los input que selecciones, coloca tu codigo a ver que has hecho y poder ayudarte mejor
  #3 (permalink)  
Antiguo 09/07/2015, 07:08
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 9 meses
Puntos: 69
Respuesta: Autorellenar formulario después de consulta

También puedes pasarle por GET a la página formulario.php el identificador único que tenga el resultado de la búsqueda (la PRIMARY KEY) para que la segunda página cargue todos los datos o puedes pasarle todos los datos por GET pero se perdería privacidad en caso de que hayan datos personales.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #4 (permalink)  
Antiguo 09/07/2015, 07:09
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

busqueda.php
Código PHP:
<!DOCTYPE html>
<html>
<head>
<title>C&amp;P Abogados</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<link rel="icon" href="../css/faviconand.ico" type="image/ico">
<link rel="stylesheet" href="../js/bootstrap-3.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="../js/bootstrap-3.3.1/css/bootstrap-theme.min.css">
<link rel="stylesheet" href="../css/cyp.css">
<link rel="stylesheet" href="../css/cypmedias.css">
<script src="../js/jquery-1.11.1.min.js"></script>
<script src="../js/bootstrap-3.3.1/js/bootstrap.min.js"></script>
<script src="../js/codigo.js"></script>
</head>

<body>
    <nav class="navbar navbar-default" role="navigation">
        <div class="navbar-header"> 
            <a class="navbar-brand" href="Principal.php">C&amp;P ABOGADOS</a>
        </div>        
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"></div>
    </nav>
<div class="container">
    <!-- Pagina de busquedas para encontrar Expedientes -->
    <div class="row clearfix">
        <div class="col-md-12 column">
            <div class="page-header" style="margin-top:0px;">
                <h3>
                    C&amp;P ABOGADOS <small>Búsqueda de Expedientes</small>
                </h3>
            </div>
            <div class="row">
                <div class="col-md-12">
                    <div class="thumbnail">
                        <img src="../css/logotdx.png" />
                        <div class="caption">
                                 <div class="form-group">
                                     <?php
                            
                        
if(isset($_REQUEST["buscar"])){

                    
$busca="";
                    
$busca=$_POST['busca'];

            if(
$busca!=""){
                require(
"../models/config.php");
            
$busqueda=mysqli_query($conexion"SELECT * FROM actividad WHERE referencia LIKE '%".$busca."%'");//cambiar nombre de la tabla de busqueda
            /*$busqueda=mysqli_query($conexion, "SELECT * FROM actividadvisible");//cambiar nombre de la tabla de busqueda*/
                                        
                            
while($f=mysqli_fetch_array($busqueda)){
                            
                             
header("Location: formulario.php");
                            
/*echo '<tr>';
                            echo '<td width="19">'.$f['referencia'].'</td>';
                            echo '<td width="19">'.$f['id_litigio'].'</td>';                            
                            echo '</tr>';    */        
                        
}        
                    }
                                    
// mysqli_close($conexion);
                        //header("Location: tdx.php");

                                    
}


                                    
?>
                                  </div>
                                  <div class="form-group">
                                    <label>Búsqueda por valor</label>
                                    <form action="principal.php" method = "POST">
                                    <input type="text" class="form-control"  name="busca" placeholder="Introduzca valor de búsqueda" >
                                  </div>
                                  <div class="text-center">
                                    <div class="btn-group" id="botonesbusquedaExpediente">
                                        
                                         <input type="submit"  name="buscar" value="Buscar por Referencia" class="btn btn-default"/> 
                                         </form>
                                         <!-- Cuando pinchamos en un boton, se ejecuta la funcion busqueda en js/codigo.js -->
                                         <!--<button type="button" id="referencia" name="referencia" class="btn btn-default" onclick="busqueda(this)">Buscar por Referencia</button> -->
                                         <button type="button" id="autos" name="autos" class="btn btn-default" onclick="busqueda(this)">Buscar por Autos</button> 
                                         <button type="button" id="posicion" name="posicion" class="btn btn-default" onclick="busqueda(this)">Buscar por Posicion</button> 
                                         <button type="button" id="deudor" name="deudor" class="btn btn-default" onclick="busqueda(this)">Buscar por Deudor</button>
                                         <button type="button" id="busquedaAvanzada" name="busquedaAvanzada" class="btn btn-default" onclick="busqueda(this)"><i><u>Busqueda Avanzada</u></i></button>
                                         <!-- Botones que muestran los modales que se encuentran en este mismo archivo abajo -->
                                         <button type="button" id="nuevoExpediente" name="nuevoExpediente" class="btn btn-default"  data-toggle="modal" data-target="#ModalNuevo"><i><u>Nuevo Expediente</u></i></button>
                                         <button type="button" id="reporteExcel" name="reporteExcel" class="btn btn-default"  data-toggle="modal" data-target="#ModalReporte"><i><u>Reporte Excel</u></i></button>
                                    </div>
                                 </div>
                        </div>
                    </div>
                </div>
            </div>
            <div id="contenedorloading">
                <i>Buscando, espere un momento.</i>
              <div class="loader" id="loader"></div>
            </div>
            <div class="row" id="expedientesEncontrados">
            </div>
        </div>
    </div>
</div>

</body>
</html>
<!-- Modal Nuevo Expediente-->
<div class="modal fade" id="ModalNuevo" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title" id="myModalLabel">Nuevo Expediente</h4>
      </div>
      <div class="modal-body">
          <div class="form-group">
              <?php
            
            ?>
        </div>
        <!-- Estos inputs estan desabilitados hasta que selecciones un Excel y una pestaña-->
        <div class="form-group" id="pestania-group">
            <label>Pestaña</label>
            <input type="text" class="form-control" id="pestaniaNuevoAux" name="pestaniaNuevoAux" placeholder="Introduzca la pestaña del Excel" disabled>
        </div>

        <div class="form-group">
            <label>REF.</label>
            <input type="text" class="form-control" id="refNuevo" name="refNuevo" placeholder="Introduzca la Referencia del nuevo Expediente" disabled>
        </div>
        <div id="LogNuevo"></div>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
        <button type="button" class="btn btn-primary" onclick="nuevoExpediente()">Crear Nuevo Expediente</button>
      </div>
    </div>
  </div>
</div>

<!-- Modal Reporte Excel-->
<div class="modal fade" id="ModalReporte" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title" id="myModalLabel">Reporte Excel</h4>
      </div>
      <div class="modal-body">
          <!-- Formulario que envia un fichero con el fin de exportarlo
            action: exportarExcel.php con la ruta en config.php
            onsubmit: funcion que se ejecuta antes de enviar el formulario para validar si has introducido un fichero. js/codigo.js
         -->
          <form action="" onsubmit="return validateFormExcel()" method="POST" >
              <h4>Exportar</h4>
              <div class="form-group">
                  <?php
                
                ?>
            </div>
            <button type="submit" class="btn btn-primary" >Exportar</button>
        </form>
        <br />
        <div id="LogReporteExportar"></div>
        <hr />
        <!-- Formulario que envia un fichero con el fin de importarlo en la carpeta correspondiente
            action: importarExcel.php con la ruta en config.php
            onsubmit: funcion que se ejecuta antes de enviar el formulario para validar si has introducido un fichero. js/codigo.js
         -->
        <form action="" onsubmit="return validateFormExcel2()" method="POST" ENCTYPE="multipart/form-data">
            <h4>Importar</h4>
            <div class="form-group">
                  <label>Cartera (Documento de Excel)</label>
                <input type="file" name="ficheroExcelImportar" id="ficheroExcelImportar" >
                <p class="help-block">Introduce el Excel que quieras Importar. Este documento reemplazará el que ya exista si tiene el mismo nombre.</p>
            </div>
            <button type="submit" class="btn btn-warning" >Importar</button>
        </form>
        <br />
        <div id="LogReporteImportar"></div>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
      </div>
    </div>
  </div>
</div>
  #5 (permalink)  
Antiguo 09/07/2015, 07:09
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

en todo caso:
Conexion a la base de datos
Código PHP:
Ver original
  1. include("../Connections/seguridad.php")//Conexion a la base
Verificamos y buscamos:
Código PHP:
Ver original
  1. $fecha = $_GET['fecha']; //Variable recibida
  2.  
  3. if($fecha=="")/*Comprobacion de que la variable no venga vacia*/{
  4.     $msg = "El campo esta vacio";
  5. }
  6. else{
  7.     //Si la variable no esta vacia, realizamos la busqueda
  8. $mysqli = new MySQLi($hostname_seguridad, $username_seguridad, $password_seguridad, $database_seguridad);
  9. $result = $mysqli->query("SELECT * FROM fechas WHERE fecha = '$fecha'");
  10. $row_result = $result->fetch_assoc();
  11. $totalRows_result = mysqli_num_rows($result);
Formulario que realiza la busqueda:
Código HTML:
Ver original
  1. <form name="buscar" action="test.php" method="get">
  2. <input type="search" placeholder=" Ingrese Nombre" name="fecha">
  3. </form>
Mostramos los resultados:
Código PHP:
Ver original
  1. //Comprobamos si hay resultados y mostramos el formulario con los campos llenos
  2.     if(mysqli_num_rows($result)==1){
  3.         echo "<form>";
  4.         echo    "<input type='text' name='fecha' value='".$row_result["fecha"]."'>";
  5.         echo "</form>";
  6.     }
  7.     else{
  8.         //Si no hay resultamos emitimos una alerta
  9.         echo "<b><h1>No hay datos</h1></b>";
  10.     }
  11. }
  #6 (permalink)  
Antiguo 09/07/2015, 07:12
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

Tambien puedes crear una lista con los nombres que encuentres en la base de datos y mediante por pasar el id a la pagina del formulario para que este te cargue la info de la persona en los input
  #7 (permalink)  
Antiguo 09/07/2015, 07:15
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

Formulario.php
Código PHP:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
    
            <a class="navbar-brand" href="Principal.php">C&amp;P ABOGADOS</a>
            <div class="collapse navbar-collapse navbar-left" id="bs-example-navbar-collapse-1">
                <button type="button" id="tdx" class="btn btn-success navbar-btn">TDX</button>
                <button type="button" id="general" class="btn btn-default navbar-btn">GENERAL</button>
                <button type="button" id="embargo" class="btn btn-default navbar-btn">EMBARGO</button>
                <button type="button" id="pagos" class="btn btn-default navbar-btn">PAGOS</button>
                <button type="button" id="acuerdo" class="btn btn-default navbar-btn">ACUERDO</button>
                <button type="button" id="recursos" class="btn btn-default navbar-btn">RECURSOS</button>
                <button type="button" id="requerimientos" class="btn btn-default navbar-btn">REQUERIMIENTOS</button>
                <button type="button" id="nuevabusqueda" class="btn btn-warning">
                    <span class="glyphicon glyphicon-search" aria-hidden="true"></span> NUEVA BUSQUEDA
                </button>
            </div>
            <p class="navbar-text"><?php echo "<b>" $_REQUEST['pestania'] . "</b> (Registro número "$_REQUEST['fila']. ")";?></p>
        </div>        
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"></div>
    </nav>
    <?php
    


//Valores de los inputs

/*Inicializamos las variables*/

/*Cabecera*/
$referencia             '';
$idLitigio                 '';
$autos                     '';
$clientes                 '';
$procurador             '';

/*Primer cuerpo*/
$cartera                 '';
$expediente             '';
$cuantia                 '';
$calificacionCredito     '';
$importeCredito         '';
$cuantiaReclamada         '';
$FechaSubrogacion         '';
$FechaCopiaSellada         '';
$Juzgado                 '';
$numJuzgado             '';
$PartidoJudicial         '';
$faseTDX                 '';
$estadoTDX                 '';

/*Segundo Cuerpo*/

$actuacionProcesal         '';
$fechaActuacion         '';
$impuso                 '';
$tipoImpulso             '';
$fechaImpulso              '';
$embargo                 '';
$fechaEmbargo             '';
$tipoEmbargo               '';
$comentarios             '';

 if(isset(
$_REQUEST["enviar"])){
     

    
/*Valores de la cabecera*/

    
$referencia         $_POST['referencia'];
    
$autos                 $_POST['autosCabecera'];
    
/*$expediente         = $_POST['posicionCabecera'];
    $clientes             = $_POST['clienteCabecera'];
    $procurador         = $_POST['procuradorCabecera'];*/


     /*Valores primer cuerpo*/
     
$cartera                 $_POST['carteraTDX'];
     
$cuantia                 $_POST['cuantiaProcedimientoTDX'];
 
/*$calificacionCredito     = $_POST['calificacionTDX'];*/
     
$importeCredito         $_POST['importeTDX'];
     
$cuantiaReclamada         $_POST['cuantiaReclamadaTDX'];
     
$FechaSubrogacion         $_POST['fechaSubrogacionTDX'];
     
$FechaCopiaSellada         $_POST['fechaCopiaSelladaTDX'];
     
$Juzgado                 $_POST['juzgadoTDX'];
     
$numJuzgado             $_POST['numJuzgadoTDX'];
     
$PartidoJudicial         $_POST['partidoJudicialTDX'];
     
$faseTDX                 $_POST['faseTDX'];
     
$estadoTDX                 $_POST['estadoTDX'];


     
/*Valores del segundo cuerpo*/
     
  
$actuacionProcesal         $_POST['actuacionTDXFormulario'];
  
$fechaActuacion             $_POST['fechaUltimaActuacionTDXFormulario'];    
  
$impuso                     $_POST['impulsoTDXFormulario'];
  
$tipoImpulso                 $_POST['tipoImpulsoTDXFormulario'];
  
$fechaImpulso             $_POST['fechaImpulsoTDXFormulario'];
  
$embargo                     $_POST['embargoTDXFormulario'];
  
$fechaEmbargo             $_POST['fechaEmbargoTDX'];
  
$tipoEmbargo              $_POST['tipoEmbargoTDX'];
  
$comentarios                 $_POST['comentariosTDX'];

require(
"../models/config.php");

    
/*SQL con los campos de la aplicacion*/
    
$peticion     =     "INSERT INTO actividad (cartera, referencia, cuantia_procedimiento, importe_credito, cuantia_reclamada,  fecha_subrogacion, fecha_copia,
    juzgado, numero_juzgado,  partido_judicial, autos, fase, estados, actuacion_procesal, fecha_actuacion, 
    impulso, tipo_impulso, fecha_impulso, embargo, fecha_embargo, tipo_embargo, comentarios) 
    VALUES  ('$cartera', '$referencia', '$cuantia', '$importeCredito', '$cuantiaReclamada', '$FechaSubrogacion', '$FechaCopiaSellada', 
    '$Juzgado', '$numJuzgado', '$PartidoJudicial', '$autos', '$faseTDX', '$estadoTDX', '$actuacionProcesal', '$fechaActuacion', 
    '$impuso', '$tipoImpulso', '$fechaImpulso', '$embargo', '$fechaEmbargo', '$tipoEmbargo', '$comentarios')"
;




mysqli_query($conexion$peticion);
mysqli_close($conexion);

 
    
    }


    
    

    
?>
    <div class="container-fluid">
  <div class="row">

  <div class="col-md-1 franja"></div>
  <div class="col-md-10" id="expedienteswrapper">
      <div class="row text-left" >
              <input type="hidden" id="documento" value="<?php echo $documento?>">
              <input type="hidden" id="fila" value="<?php echo $fila?>">
              <input type="hidden" id="pestania" value="<?php echo $pestania?>">


<form  method="POST" action="formulario.php">              
                  <div class="col-md-2">
                      <div class="form-group">
                    <label>REF.</label>
                    <input type="text" class="form-control" placeholder="Referencia" name="referencia" value="<?php echo $referencia?>">
                    <input type="hidden" class="form-control" id="referenciaAntigua" value="<?php echo $referencia?>">
                      </div>
                  </div>
                  <div class="col-md-2">
                      <div class="form-group">
                    <label>EXPEDIENTE</label>
                    <input type="text" class="form-control" placeholder="Expediente" id="posicionCabecera" value="<?php echo $expediente?>" readonly>
                      </div>
                  </div>
                  <div class="col-md-2">
                      <div class="form-group">
                    <label>ID LITIGIO (No en excel, sin utilidad)</label>
                    <input type="text" class="form-control" placeholder="ID Litigio" id="idLitigioCabecera" value="<?php echo $idLitigio?>">
                      </div>
                  </div>
                  <div class="col-md-3">
                      <div class="form-group">
                    <label>AUTOS</label>
                    <input type="text" class="form-control" placeholder="Autos" name="autosCabecera" value="<?php echo $autos?>">
                      </div>
                  </div>
                  <div class="col-md-3">
                      <div class="form-group">
                    <label>CLIENTE</label>
                    <input type="text" class="form-control" placeholder="Cliente" name="clienteCabecera" value="<?php echo $cartera?>" >
                      </div>
                  </div>
                  <!--<div class="col-md-1">
                      <div class="form-group">
                    <label>PROCURADOR</label>
                        <select class="form-control" id="procuradorCabecera">
                            <option></option>
                            <option>ALD</option>
                            <option>RACMO</option>
                          </select>
                      </div>
                  </div>-->
                  <!--<div class="col-md-1">
                      <div class="form-group">
                    <label>&nbsp;</label>
                        <p><span class='glyphicon glyphicon-floppy-disk' aria-hidden='true' onclick='guardaCabeceraGeneral()' style="font-size:25px;color:#337ab7"></span></p>
                      </div>
                  </div>-->
    </div>


    <div class="row">
        <div class="col-md-12">
            <div class="bloque" style="text-align:left;">
                    <div class="row">
                        <div class="col-md-4">
                            <div class="form-group">
                            <label>CARTERA</label>
                            <input type="text" class="form-control" name="carteraTDX" value="<?php echo $cartera?>">
                              </div>
                        </div>
                        <div class="col-md-8">
                            <div class="form-group">
                            <label>EXPEDIENTE</label>
                            <input type="text" class="form-control" id="expedienteTDX" value="<?php echo $expediente?>" readonly>
                              </div>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-md-4">
                            <div class="form-group">
                            <label>CUANTÍA_DEL_PROCEDIMIENTO</label>
                            <input type="text" class="form-control" name="cuantiaProcedimientoTDX" value="<?php echo $cuantia?>">
                              </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                            <label>CALIFICACIÓN_DEL_CRÉDITO(CONCURSO)(No en excel, sin utilidad)</label>

                            <select class="form-control" name="calificacionTDX">
                              <option><?php echo $calificacionCredito?></option>
                              <option>CRÉDITO_ORDINARIO</option>
                              <option>CRÉDITO_PRIVILEGIADO_ESPECIAL</option>
                              <option>CRÉDITO_PRIVILEGIADO_GENERAL</option>
                              <option>CRÉDITO_SUBORDINADO</option>
                              <option>CRÉDITO_CONTRA_LA_MASA</option>
                            </select>
                            
                              </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                            <label>IMPORTE_CRÉDITO_RECONOCIDO(CONCURSO)</label>
                            <input type="text" class="form-control" name="importeTDX" value="<?php echo $importeCredito?>">
                              </div>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-md-4">
    
  </div><!-- Cierre expedienteswrapper-->
  <div class="col-md-1 franja"></div>
  </div><!-- Cierre Row general-->
</div><!-- Cierre container-fluid-->

</body>
</html>
Aquí está todo. no os fieis de la estructura porque no me permitia meter todo e codigo y he cortado así sin más. PEro no era relevante desde luego.
  #8 (permalink)  
Antiguo 09/07/2015, 07:15
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 9 meses
Puntos: 69
Respuesta: Autorellenar formulario después de consulta

Como tienes estructurada la tabla actividad? Tiene algún valor que sea único para cada registro? No se si el campo id_litigio sea único, si es así puedes enviarlo por GET.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #9 (permalink)  
Antiguo 09/07/2015, 07:16
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

Ninguno de los que están es único. El único es un ID que es autonumérico. El ID_litigio se inserta de manera manual.
  #10 (permalink)  
Antiguo 09/07/2015, 07:22
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 9 meses
Puntos: 69
Respuesta: Autorellenar formulario después de consulta

Ese campo está perfecto para lo que te digo. Intenta hacer esta modificación:

Cita:
Iniciado por Jvgaas7 Ver Mensaje
busqueda.php
Código PHP:
$busqueda=mysqli_query($conexion"SELECT * FROM actividad WHERE referencia LIKE '%".$busca."%'");//cambiar nombre de la tabla de busqueda
/*$busqueda=mysqli_query($conexion, "SELECT * FROM actividadvisible");//cambiar nombre de la tabla de busqueda*/
while($f=mysqli_fetch_array($busqueda)){
      
header("Location: formulario.php?id=".$f['id']);
                            
/*echo '<tr>';
                            echo '<td width="19">'.$f['referencia'].'</td>';
                            echo '<td width="19">'.$f['id_litigio'].'</td>';                            
                            echo '</tr>';    */        
                        

Al abrirse la página formulario.php lo primero que debe comprobar es si está definida la variable id por _GET y si es así haces un SELECT indicando en el WHERE ID= al valor de la variable id pasada por get y los resultados ya los puedes cargar en los input o donde quieras.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #11 (permalink)  
Antiguo 09/07/2015, 07:26
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

este codigo lo veo medio chucuto, en esta pagina formulario deberias recibir la variable para listar los resultados y llenar los input y luego en otra pagina, por ejemplo registro guardar esos datos o actualizarlos en tal caso
  #12 (permalink)  
Antiguo 09/07/2015, 09:48
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 6 meses
Puntos: 320
Respuesta: Autorellenar formulario después de consulta

carga.html
Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <head>
  3.         <meta charset="utf-8">
  4.         <title>Carga de datos</title>
  5.         <script>
  6.             LoadData = function(url) {
  7.                 this.search = this.search.bind(this);
  8.                 this.load = this.load.bind(this);
  9.  
  10.                 this.url = url;
  11.                 this.form = null;
  12.             }
  13.  
  14.             LoadData.prototype = {
  15.                 "search" : function(form) {
  16.                     this.form = form;
  17.                     this.load(new FormData(this.form), function(status, response) {
  18.                         if(status === 200) {
  19.                             response = JSON.parse(response);                           
  20.                             for(var name in response)
  21.                                 this.form.elements[name].value = response[name];
  22.                         }
  23.                     });
  24.                 },
  25.                 "load" : function(params, callback) {
  26.                     var request = new XMLHttpRequest();
  27.                     request.open("POST", this.url);
  28.                     request.onreadystatechange = function(callback) {
  29.                         if(this.readyState == 4)
  30.                             callback(this.status, this.responseText);
  31.                     }.bind(request, callback.bind(this));
  32.                     request.send(params);
  33.                 }
  34.             };
  35.         </script>
  36.     </head>
  37.     <body>
  38.         <h1>Carga de formulario de busqueda via json</h1>
  39.         <form id="datos-origen">
  40.             <label>
  41.                 El codigo:
  42.                 <input type="text" name="codigo" value="5">
  43.             </label>
  44.             <label>
  45.                 Nombres:
  46.                 <input type="text" name="nombres">
  47.             </label>
  48.             <label>
  49.                 Apellidos:
  50.                 <input type="text" name="apellidos">
  51.             </label>
  52.             <label>
  53.                 Documento:
  54.                 <input type="text" name="documento_nro">
  55.             </label>
  56.             <input type="reset" value="VACIAR">
  57.         </form>
  58.         <button id="load">Cargar</button>
  59.  
  60.         <script>
  61.             document.getElementById("load").addEventListener("click", function() {
  62.                 (new LoadData("search.php")).search(document.getElementById("datos-origen"));
  63.             });
  64.         </script>
  65.     </body>
  66. </html>

search.php
Código PHP:
Ver original
  1. <?php    
  2. /* Config */
  3. $db = ["localhost", "root", "", "db_name"];
  4. $table = "contactos";
  5. $fields = [
  6.     "codigo" => "=",
  7.     "nombres" => "%LIKE%",
  8.     "apellidos" => "%LIKE%",
  9.     "documento_nro" => null
  10. ];
  11. $result = false;
  12.  
  13. if($mysqli = new MySQLi($db[0], $db[1], $db[2], $db[3])) {
  14.  
  15.     $filter = array_intersect_key(array_filter($fields), array_filter($_POST));
  16.  
  17.     $where = "";
  18.     foreach($filter as $key => $type) {
  19.         $where .= ($where ? " AND " : "");
  20.         switch($type) {
  21.             case "=" :
  22.                 $where .= "$key = ?";
  23.             break;
  24.             case "%LIKE%" :
  25.                 $where .= "$key LIKE ?";
  26.                 $_POST[$key] = "%" . $_POST[$key] . "%";
  27.             break;
  28.         }
  29.     }
  30.    
  31.     if($where)
  32.         $where = "WHERE $where";
  33.    
  34.     if($stmt = $mysqli->prepare("SELECT " . implode(", ", array_keys($fields)). " FROM $table $where LIMIT 1")) {
  35.        
  36.         foreach($filter as $key => $type)
  37.             $stmt->bind_param("s", $_POST[$key]);
  38.  
  39.         $stmt->execute();
  40.  
  41.         if($result = $stmt->get_result()) {
  42.             $result = $result->fetch_array(MYSQLI_ASSOC);
  43.             foreach($result as &$value)
  44.                 $value = utf8_encode($value);
  45.             unset($value);
  46.         }  
  47.         $stmt->close();  
  48.     }
  49.    
  50.     $mysqli->close();  
  51. }
  52.  
  53. if(!$result)
  54.     $result = array_fill_keys(array_keys($fields), null);
  55.  
  56. exit(json_encode($result));
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios
  #13 (permalink)  
Antiguo 10/07/2015, 03:57
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

Mmm lo he estado probando por GET y la verdad es que algo funciona, el problema es que si quiero añadir líneas continuas el valor se me elimina.
  #14 (permalink)  
Antiguo 10/07/2015, 05:10
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

Explica mejor????
  #15 (permalink)  
Antiguo 10/07/2015, 05:26
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

Voy por partes porque entre que no me sale y todo lo que leo estoy un poco "aturullado"

Os expongo las dudas y luego el resultado que estoy obteniendo.

en busqueda.php tengo la consulta y con el metodo get he conseguido llevar una variable (referencia) que inserto al campo de formulario.php.

Es decir, busca en la base de datos la referencia y si existe la pinta en formulario.


Problema? No se pintan en el formulario todos los datos de la base de datos porque no sé que manera cargarlo.

Por otro lado una vez que guardo el valor de referencia me aparece un "notice" diciéndome que no existe el valor, es decir una vez que guardo el valor se elimina y lo que quiero es dejarlo fijo.


gracias a todos!
  #16 (permalink)  
Antiguo 10/07/2015, 06:30
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 5 meses
Puntos: 263
Respuesta: Autorellenar formulario después de consulta

ok el asunto es el siguiente, con este codigo listo los resultados de mi busqueda:
Código PHP:
Ver original
  1. $fecha = "Jose";//variable que se recibe para filtrar la busqueda
  2.  
  3. $db = new MySQLi($hostname_seguridad, $username_seguridad, $password_seguridad, $database_seguridad);
  4. $result = $db->query("SELECT * FROM fechas WHERE fecha = '$fecha'");
  5. $totalRows_result = mysqli_num_rows($result);
  6.  
  7. if($result){
  8.     //si hay resultados me crea una lista
  9.             echo "Lista de Nombres: <br>"; 
  10.             echo "<ul>";
  11.     while($row = mysqli_fetch_array($result))
  12.     {
  13.  
  14.         echo    "<li id='".$row['id']."'><a href='ver.php?id=".$row['id']."'>".$row['fecha']."</a> - ".$row['id']."</li>";
  15.        
  16.     }
  17.         echo "</ul>";
  18. }
  19. else {
  20.     //si no hay resultados
  21.     echo "No se encontraron datos";
  22. }
Una ves me muestra la lista de los posibles resultados encontrados, y luego de hacer clic en el que veo que quiero enviar a mi form,lo recibo en la siguiente pagina ver.php:
Código PHP:
Ver original
  1. //ver.php
  2. if($_POST['id']==""){
  3.     echo "El el formulario se envio vacio";
  4. }
  5. else {
  6. $id = $_POST['id'];
  7. $db = new MySQLi($hostname_seguridad, $username_seguridad, $password_seguridad, $database_seguridad);
  8. $result = $db->query("SELECT * FROM fechas WHERE id = '$id'");
  9. $row_result = $result->fetch_assoc();
  10.     if($result){
  11.         echo    "<fomr>";
  12.         echo        "<label>Nombre:</label>";
  13.         echo        "<input type=`text' name='nombre' value='".$row_result['nombre']."'>";
  14.         echo        "<label>Direccion:</label>";
  15.         echo        "<input type='text' name='direccion' value='".$row_result['direccion']."'>";
  16.         echo    "</form>";
  17.     }
  18.     else{
  19.         echo "El serultado no se cargo";
  20.     }
  21. }
donde como puedes ver me carga los datos de la consulta en los input del formulario y lo deja listo para lo que quiero hacer con el, solo adapta el codigo a tu necesidad

Última edición por xfxstudios; 10/07/2015 a las 06:35
  #17 (permalink)  
Antiguo 13/07/2015, 01:48
Avatar de Jvgaas7  
Fecha de Ingreso: julio-2015
Mensajes: 40
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Autorellenar formulario después de consulta

Eso era lo que buscaba y la verdad es que genial!! Muchiiisimas gracias a todos!

Etiquetas: ajax, busqueda, inputs, sql
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:11.