PHP - La variable $_POST no guarda los datos ¿Por que?

   
Vista:
Imágen de perfil de Blas

La variable $_POST no guarda los datos ¿Por que?

Publicado por Blas (3 intervenciones) el 10/11/2015 10:30:06
Antes de nada, gracias por dedicar su tiempo a mi problema.
Estoy desarrollando una aplicación en PHP (Ver. 5.6 en XAMPP), con accesos a una BD en MySQL.
La aplicación tiene varios formularios para modificar datos de la BD.
En el que a continuación detallo la variable $_POST, no guarda los datos. No encuentro el motivo.
¿Configuración del servidor?¿?.
El codigo es el siguiente:
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
/*
 *
 * ModReg
 * Modifica contenido del registro
 *
 */
function ModReg() {
 
	if (isset($_POST['btnguardar'])){
		for ($n = 0; $n < count($this->aCampo); $n++) {
			$this->aDatos[0][$n] = trim(strip_tags($_POST[$this->aCampo[$n]]));
		}
		$this->bModificado = TRUE; // se ha modificado el registro
		print_r($this->aDatos); //---- COMPROBACION
	}
	?>
	<!--formulario para edicion-->
	<form id="FModReg" name="FModREg" action="<?php SELF ?>" method="POST">
		<table class="adcab">
			<tbody class="adedita">
			<?php
			$cLectura = "readonly";
			for ($n = 0; $n < count($this->aCampo); $n++) {
				?>
				<tr>
				<td><?php echo $this->aCampo[$n];?></td>
				<?php
					if ($this->aMaxLong[$n] > COLS){
						?>
							<td><textarea name="<?php echo $this->aCampo[$n];?>" rows="4"
							cols="<?php echo COLS ?>" form="FModReg"><?php echo trim($this->aDatos[0][$n]);?></textarea>
							</td>
						<?php
					} else {
						?>
						<td><input type="text" name="<?php  echo $this->aCampo[$n];?>"
									value="<?php echo $this->aDatos[0][$n] ?>"
									size="<?php echo $this->aMaxLong[$n]; ?>"
									placeholder="<?php echo $this->aCampo[$n];?>" <?php echo $cLectura;?>
									form="FModReg"/></td>
				</tr>
				<?php
					}
					$cLectura = "";//-- READONLY PARA EL CAMPO CLAVE
				}
				//print "<pre>"; print_r($_REQUEST); print "</pre>\n";
				print_r($_POST);
				?>
			</tbody>
		</table>
		<br></br>
		<input type="submit" value="Guardar"  name="btnguardar"/>
		<input type="submit" value="Salir"    name="btncancelar"/>
	</form>
	<!-----------------fin formulario-->
	<?php
}//-- fin ModReg
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

La variable $_POST no guarda los datos ¿Por que?

Publicado por Andrés (149 intervenciones) el 11/11/2015 15:55:01
Estas llamando la función ModReg() ? si no es asi, deberias agregar: ModReg(); en el script donde estas recibiendo los datos POST.
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
Imágen de perfil de Blas

La variable $_POST no guarda los datos ¿Por que?

Publicado por Blas (3 intervenciones) el 11/11/2015 20:05:09
Gracias Andres por tu tiempo.
Creo que no he explicado doinde está el problema del script, cuyo código he puesto.
La funcion ModReg(), se ejecuta bien y el formulario se muestra correctamente. Cuando se pulsa "guardar", la variable $_POST, no guarda los datos con lo cual el fragmento de codigo que hay al principio del script, no se ejecuta.
Llevo varios días buscando (aun estoy en ello) una explicación y no la he encontrado.
De todas formas, gracias por la ayuda.
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
Imágen de perfil de xve

La variable $_POST no guarda los datos ¿Por que?

Publicado por xve (5515 intervenciones) el 12/11/2015 09:02:52
Hola Blas, exactamente que contienen las variables: $this->aCampo y $this->aDartos?

Una vez se muestra en el navegador, si visualizas el código fuente, los nombres están bien colocados en el formulario?
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
Imágen de perfil de Blas

La variable $_POST no guarda los datos ¿Por que?

Publicado por Blas (3 intervenciones) el 12/11/2015 09:58:51
Gracias xve por tu comentario y haber dedicado parte de tu tiempo.
Adjunto imagen de lo que produce la funcion ModReg.
ModReg.

La variable $this->aCampo, contiene el nombre del campo. La variable $this->aDatos, almacena el contenido del campo.
Ambas variables se presentan en el formulario para editar el contenido del registro, tal y como muestra la imagen adjunta. Hasta ahí, todo va bien, el problema, tal y como ya he explicado está en que cuando se pulsa el botón "Guardar", la variable $_POST, no almacena nada.
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