PHP - enviar datos de un formulario a un modal bootstrap con php, javascript y postgreslp

   
Vista:

enviar datos de un formulario a un modal bootstrap con php, javascript y postgreslp

Publicado por Rafael (5 intervenciones) el 17/07/2016 02:20:25
Hola amigos, espero puedan ayudarme.
estoy programando un sistema, donde tengo una lista



en cual cada registro tiene un botón "editar", al presionar dicho botón se cargan los datos del registro seleccionado, en un formulario que tengo en una ventana modal de bootstrap


lo que quiero es que al dar en el botón "guardar" me gustaría insertara los datos que he modificado en el formulario, el problema radica en cuando quiero enviar el formulario con el serialize(), no me envía los datos que tengo cargados en el formulario, cabe señalar que tengo un formulario y dentro de ese formulario tengo un div donde se cargan los campos del formulario que están en otra pagina php donde realizo las consultas a la base de datos y le cargo los valores a formulario en la etiqueta "value" de caga input o select.

anexo codigo para ver si alguien puede ayudarme a solucionarlo.


este en el archivo "asignar_perfil.php" donde cargo la lista y tengo el formulario modal de bootstrap.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<script src="../js/javascript.js" type="text/javascript"></script>
<?php
session_start();
include_once('../controlador/principal.php');
$prin = principal::getInstancia();
$result = $prin->buscar_los_usuarios($_SESSION['unidad'], $_SESSION['perfil']);
?>
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr class="active">
<td><strong>R.U.N</strong></td><td><strong>Apellidos</strong></td><td><strong>Nombres</strong></td><td><strong>Correo</strong></td><td><strong>Unidad</strong></td><td><strong>Perfil</strong></td>
<td><strong>Acciones</strong></td></tr>
</thead>
<tbody>
<?php
while($usu = pg_fetch_assoc($result)){
$unidad = $prin->obtener_una_unidad($usu['unidad']);
$perf = $prin->obtener_un_perfil($usu['idperfil']);
//var_dump($usu);
//echo($_SESSION['perfil']);
echo "<tr><td><a class='pointer' href='#'>".$usu['rut']."</a></td><td>".$usu['apellidos']."</td><td>".$usu['nombres']."</td><td>".$usu['correo']."</td><td>".$unidad['unidad']."</td><td>".$perf['nombre']."</td><td><a href='#'class='btn btn-info btn-xs' data-toggle='modal' data-target='#miventana' onclick='javascript:modificar_asignar_perfiles(\"".$usu['rut']."\")'>Editar</a></td></tr>";
}
?>
</tbody>
</table>
</div>
<div class="modal fade" id="miventana">
<div class="modal-dialog modal-md" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h5 class="modal-title" >Asignar un Perfil</h5>
</div>
<div class="modal-body">
<form id="form_asignar_perfil" class="form-horizontal" method="post" action="select_asignar.php">
<div id="formulario"></div>
</form>
</div>
<div class="modal-footer">
<button onclick="javascript: editar_asignar_perfil();" class="btn btn-info btn-sm" >Guardar</button>
<button class="btn btn-danger btn-sm" data-dismiss="modal">Cancelar</button>
</div>
</div>
</div>
</div>

estas son las funciones javascript donde la funcion "modififar_asignar_perfiles()" me muestra los datos del registro seleccionado. y la funcion "editar_asignar_perfiles()" en envia por post a un archivo php los datos de mi formulario (esta funcion no envia los datos del formulario ya que al ejecutarse el "alert" no me retorna ningun dato del formulario)

1
2
3
4
5
6
7
8
9
10
function modificar_asignar_perfiles(rut){
	$.post('editar_asignar_perfiles.php',{rut:rut},function(res){
	$('#formulario').html(res);
	});
}
function editar_asignar_perfil(){
	$.post('select_asignar.php',$('#form_asignar_perfil').serialize(),function(res){
		alert(res);
	});
}

este es el archivo "editar_asignar_perfiles.php" que es aqui donde hago las consultas a la base de datos y extraigo los datos del registro seleccinado y los cargo a los campos del formulario que se imprimen en un div

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
session_start();
include_once('../controlador/principal.php');
$html='';
$rut = $_POST['rut'];
$prin = principal::getInstancia();
$usuario = $prin->obtener_el_usuario($rut);
$uni = $prin->obtener_una_unidad($usuario['unidad']);
$html='
   <div class="form-group">
    <label for="ejemplo_email_3" class="col-lg-2 control-label">Rut</label>
   <div class="col-lg-10">
    <input type="text" name="rut" id="rut" class="form-control" value="'.$usuario['rut'].'" disabled="disabled" />
   </div>
  </div>
  <div class="form-group">
    <label for="ejemplo_email_3" class="col-lg-2 control-label">Nombres</label>
   <div class="col-lg-10">
    <input type="text" name="nombres" id="nombres" class="form-control" value="'.$usuario['nombres'].'" disabled="disabled" >
   </div>
  </div>
  <div class="form-group">
    <label class="col-lg-2 control-label">Apellidos</label>
   <div class="col-lg-10">
    <input type="text" name="apellidos" id="apellidos" class="form-control" value="'.$usuario['apellidos'].'" disabled>
   </div>
  </div>
  <div class="form-group">
    <label class="col-lg-2 control-label">Correo</label>
   <div class="col-lg-10">
    <input type="text" name="correo" id="correo" class="form-control" value="'.$usuario['correo'].'" disabled>
   </div>
  </div>
  <div class="form-group">
    <label  class="col-lg-2 control-label">Unidad</label>
   <div class="col-lg-10">
    <input type="text" name="unidad" id="unidad" class="form-control" id="unidad" value="'.$uni['unidad'].'" disabled>
   </div>
  </div>
  <div class="form-group">
    <label class="col-lg-2 control-label">Perfil</label>
   <div class="col-lg-10">
    <select id="perfil" class="form-control">#PERFIL</select>
   </div>
  </div>
  ';
$row = $prin->obtener_los_perfiles();
  while($result = pg_fetch_assoc($row)){
 	if($result['id_perfil'] == $usuario['idperfil']){
		$perfil .= '<option value="'.$result['id_perfil'].'" selected>'.$result['nombre'].'</option>';
	}else{
		$perfil .= '<option value="'.$result['id_perfil'].'">'.$result['nombre'].'</option>';
	}
  }
$html = str_replace("#PERFIL", $perfil, $html);
 
	echo $html;
?>

espero que puedan ayudarme, llevo varios días intentando realizar esta operación pero no he logra dar con la solución, creo que mi error esta en cargar los campos del formulario en un div y al ejecutar el serialize() no reconoce los campos del formulario ya que se encuentran en otra pagina, si alguien ha hecho antes le agradecería que me guiara para poder avanzar en mi proyecto, de antemano les agradezco.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder