PHP - Modificar o cambiar valor de una variable en input text y mostrar en otro formulario

 
Vista:
sin imagen de perfil

Modificar o cambiar valor de una variable en input text y mostrar en otro formulario

Publicado por anonymous (6 intervenciones) el 26/10/2016 16:04:28
Hola necesito lo siguiente:
Tengo un resultado de un correo electrónico o cualquier dato en un input text con el atributo disabled para no ser editado. Al presionar un checkbox me habilita ese campo para poder borrar y modificar ese dato. Quisera me orienten como hacerlo pues ya puedo habilitar con un check y editar el campo, pero al pasarlo al otro php para ver el valor simplemente no me muestra el valor inicial si es que no selecciono el ckek o bien no me muestra la variable aun seleccionando el chek. Gracias.
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
<html lang="es">
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1 user-scalable=no">
		<title>FORMULARIO</title>
		<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
		<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
		<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
		</head>
			<?php
				$nombre_completo="Pablo";
				$jefe_inmediato="prueba@ggs.mx";
			?>
			<body>
				<div class="form-bottom">
					<form role="form" class="login-form" action="verificar.php" method="POST" id="login-form">
						<div class="form-group hidden">
							<div class="alert alert-warning fade in"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
								<i class="glyphicon glyphicon-warning-sign alert-icon "></i>
							</div>
						</div>
						<div class="form-group row">
							<label for="nombre_solicitante"class="col-xs-12 col-sm-6 col-md-2 col-form-label">Nombre del Solicitante  </label>
							<div class="col-md-4"><input type="text" id="nombre_solicitante" name="nombre_completo" placeholder="<?php echo $nombre_completo; ?>" class="form-control" disabled></div>
							<label for="jefe_inmediato"class="col-xs-12 col-sm-6 col-md-2 col-form-label">Jefe Inmediato </label>
							<div class="col-md-4"><input type="text" id="jefe_inmediato" name="jefe_inmediato" value="<?php echo $jefe_inmediato; ?>" class ="form-control" disabled></div>
						</div>
						<div class="form-group row">
							<div class="col-md-6"><input class="form-check-input" id="chk" type="checkbox" name="chk" value="" />Activa la casilla si el correo de jefe inmediato es incorrecto es incorrecto y escribelo</label></div>
							<script type="">
							document.getElementById('chk').onchange = function() {
								document.getElementById('jefe_inmediato').disabled = !this.checked;
								$("#jefe_inmediato").focus().select();
							};
							</script>
						</div>
					</div>
					<button type="submit" class="btn" id="btn-formulario" name="enviar" value="enviar" >Aceptar</button>
				</form>
				<button type="submit" class="btn" id="btn-cancelar" name="cancelar" value="cancelar" >Cancelar</button>
				<script type="text/javascript">
				document.getElementById("btn-cancelar").onclick = function () {
					location.href = "index.php";
				};
				</script>
	</body>
</html>

Este es el codigo verificar.php

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
<!DOCTYPE html>
	<html lang="es">
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1 user-scalable=no">
		<title>VERIFICAR LOS DATOS</title>
		<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
		<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
		<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
	</head>
	<body>
				<div class="row">
					<div class="col-lg-offset-1 col-xs-12 col-lg-10 form-box"><!--Ancho de la pagina -->
						<div class="form-bottom">
							<form role="form" class="login-form" method="POST" id="login-form" action="enviar.php">
								<div class="table-responsive">
									<table class="table table-bordered table-hover table-condensed">
										<tfoot>
											<tr>
												<td colspan="5" class="text-center">¿No son correctos los datos? <a href="index.php" target=""><p class="text-danger"> Cancela e ingresa de nuevo los datos</p></a></td>
											</tr>
										</tfoot>
									</table>
								</div>
								<div class="text-center">
									<button type="submit" class="btn btn-primary">Enviar Solicitud a </button> <?php echo '<h4>' .$_POST['jefe_inmediato'].'</h4>';?>
								</div>
							</form>
						</div>
					</div>
				</div>
	</body>
</html>
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
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Modificar o cambiar valor de una variable en input text y mostrar en otro formulario

Publicado por kip (877 intervenciones) el 26/10/2016 23:40:35
Hola puedes resolverlo de diferentes maneras, aqui te dejo un par:

La primera es hacer que el atributo disabled del input antes del submit cambie, ya que mientras este disabled no lo recibiras, solo coloca este codigo usando funciones de jQuery:

1
2
3
$("#login-form").submit(function() {
	$("#jefe_inmediato").attr("disabled", false);
});

Otra solucion es que en lugar de usar el atributo disabled uses el atributo readonly en el input y lo cambies igual que lo haces con el checkbox

1
<div class="col-md-4"><input type="text" id="jefe_inmediato" name="jefe_inmediato" value="<?php echo $jefe_inmediato; ?>" class ="form-control" readonly="readonly"></div>

1
2
3
4
document.getElementById('chk').onchange = function() {
	$("#jefe_inmediato").prop("readonly", !this.checked);
	$("#jefe_inmediato").focus().select();
};

Puedes tambien usar un input hidden y que este vaya tomando el valor del input principal por si se hace algun cambio.

Nos cuentas si te sirve alguna de las opciones que te comente.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar