Foros del Web » Programando para Internet » PHP »

Se pierden variables POST aleatoriamente

Estas en el tema de Se pierden variables POST aleatoriamente en el foro de PHP en Foros del Web. Hola. Tengo una web donde se envia un formulario con variables POST para añadir datos con mysql. He detectado que a veces las variables POST ...
  #1 (permalink)  
Antiguo 04/11/2010, 07:59
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 1
Se pierden variables POST aleatoriamente

Hola.
Tengo una web donde se envia un formulario con variables POST para añadir datos con mysql.

He detectado que a veces las variables POST se pierden, no suele pasar pero alguna vez si. (si se pierden son todas a la vez)

También se suben fotos en el mismo formulario, cuando ocupan mucho espacio y sobrepasan el límite máximo de upload entonces las variables POST llegan vacias.
Eso es comprensible, lo que no entiendo es que a veces también pasa sin subir ningún fichero.

Soy un poco novato quizás es algún fallo chorra. ¿teneis alguna idea de por qué puede pasar?.

Gracias.
Saludos.
  #2 (permalink)  
Antiguo 04/11/2010, 09:13
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Respuesta: Se pierden variables POST aleatoriamente

es muy posible tambien tengas algun error en el html de tu formulario (es decir que no esta hecho correctamente), ten cuenta tal vez se estan superponiendo valores, x elementos replicados u otras variables globales.

saludos
  #3 (permalink)  
Antiguo 04/11/2010, 09:16
Avatar de Chiefwesker  
Fecha de Ingreso: octubre-2010
Mensajes: 10
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Se pierden variables POST aleatoriamente

Hola, tal vez si nos pones el codigo del formulario y la parte de PHP donde lo recibes y manipulas se pueda notar el problema.

Saludos
  #4 (permalink)  
Antiguo 04/11/2010, 09:49
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Se pierden variables POST aleatoriamente

Os anexo el código, pero es de lo primero que hice y está bastante liado, no me extrañaria que haya algún fallo no, o varios, además está hecho con tablas en lugar de CSS

Mi web es www.localesparamusicos.com pero para ver este formulario (en alta de locales) hay que registrarse. (el resto de la web está formateado con CSS por cierto)

Código:
<form name="formLocal" method="post" enctype="multipart/form-data"  action="#" target="iframeUpload" onReset="document.getElementById('capacontenedoraloc').innerHTML='<br>';document.getElementById('matches').innerHTML='<br>';document.getElementById('capacontenedoraloc2').innerHTML='<br>'">
                    <input type="hidden" name="id" value="">
                   <table border="0" bgcolor="" cellspacing="9">
                     <tr>
                        <td></td>
                        <td><font color='red'><small>Campos obligatorios con *</small></font></td>
                     </tr>
                     <tr>
                       <td align="right"><font color='red'>*</font><b>Nombre:</b></td>
                       <td><input type="text" id="nombre" name="nombre" size="45" maxlength="50"></td>
                        <td width="20"></td>
                        <td align="right"><font color='red'></font><b>E-Mail:</b></td>
                       <td><input type="text" id="emailloc" name="emailloc" size="45"></td>
                    </tr>
                    <tr>
                       <td align="right"><b>Web:</b></td>
                       <td><input type="text" id="web" name="web" size="45" maxlength="200"></td>
                        <td width="20"></td>
                        <td align="right"><b>Teléfono:</b></td>
                       <td><input type="text" id="telef" name="telef" size="45"></td>
                    </tr>  
                     <tr>
                        <td align="right"><b>Foto1:</b></td>
                        <td><input type="file" id= "foto1" name="foto1" size="33" maxlength="100" onchange="filtraFichero(this)"></td>
                        <td width="20"></td>
                        <td align="right"><b>Foto2:</b></td>
                       <td><input type="file" name="foto2" size="33" maxlength="100" onchange="filtraFichero(this)"></td>
                     </tr>
                     <tr>
                        <td align="right"><b>Foto3:</b></td>
                        <td><input type="file" id= "foto3" name="foto3" size="33" maxlength="100" onchange="filtraFichero(this)"></td>
                        <td width="20"></td>
                        <td align="right"><b>Foto4:</b></td>
                       <td><input type="file" name="foto4" size="33" maxlength="100" onchange="filtraFichero(this)"></td>
                     </tr>
                     <tr></tr><tr>
                        <td align="center" colspan="5"> <b>
                        <div id="capacontenedoraloc"><br></div></td></tr><tr></tr>
                   </table>
                    <tr>
                      <td colspan="2" align="left" bgcolor="#dbdbdb"><small style="color:#000000"><b>Datos de localización</b></small></td>
                    </tr>
                    <tr>
                      <td colspan="2" align="center" height="3" background="imagenes/bg_blue-whitem.gif">&nbsp;</td>
                    </tr>
                    <tr>
                      <td>
						<div id='buscdir'>
							<small>Introduce la dirección para buscar en google maps</small>
							<input type="text" id="address" size="50" maxlength="200">
							<input type="button" value="Buscar" onclick="buscaDirec()"/>
						</div>
                      </td>
                      <td rowspan="2">
                       <br/>
                      <div id="mapalocal" class="mapalocal"></div>
                      </td>
                    </tr>
                    <tr>
                      <td>
						<div id="eligedir">
						<small>Elige la dirección buscada si hay más de una:</small>
							<div id="matches"></div>
							<div id="mapastreet"></div>
						</div>
                      </td>
                    </tr>
                    <tr>
                        <td colspan="2" align="center">
                          <table border="0" bgcolor="" cellspacing="10">  
                              <tr>
                                <td align="left"><font color='red'>*</font><b>Dir. resultado:</b></td>
                                <td><input type="text" id="direccion" name="direccion" readonly="readonly" size="40" maxlength="100"></td>
                                <td width="20"></td>
                                <td align="right"><font color='red'>*</font><b>Geolocalizacion:</b></td>
                                <td><input type="text" id="geoloc" readonly="readonly" size="45">
                                    <input type="hidden" id="geolat" name="geolat" readonly="readonly" size="45"/>
                                    <input type="hidden" id="geolng" name="geolng" readonly="readonly" size="45" />
									<input type="hidden" id="heading" name="heading" readonly="readonly" size="10"/>
									<input type="hidden" id="pitch" name="pitch" readonly="readonly" size="10" />
									<input type="hidden" id="zoom" name="zoom" readonly="readonly" size="2" />
                                </td>  
                              </tr>
                            </table>
                            <br><br>
                              <tr>
                                <td colspan="2" align="center" background="imagenes/bg_blue-whitem.gif">&nbsp;</td>
                              </tr>
                              <tr>
                                <td colspan="2" align="center">
                                <p><b>Datos varios:</b></p><textarea id="comentarios" name="comentarios" cols=60 rows=5></textarea><br></td>                
                              </tr>
                        </td>
                    </tr>
                    <tr>
                       <td></td>
                       <td align="left"> <b>
                        <div id="capacontenedoraloc2"><br></div></td>
                     </tr>
                    <tr>
                     <td colspan="2" align="center">
                        <table border="0" bgcolor="" cellspacing="10">  
                         <tr>
                            <td><input type="submit" value="        Enviar        " onClick="ValidareInsertar()"> &nbsp; &nbsp;</td>
                            <td><img width=20px height=20px id="loading" src="upload/loading.gif" style="display:none;"></td>
                            <td>&nbsp; &nbsp;&nbsp; &nbsp;<input type="reset" value="     Borrar     "> &nbsp; &nbsp;</td>
                         </tr>
                        </table>
                     </td>

                          <iframe name="iframeUpload" style="display:none"> </iframe>
                             <br><br><br>
                    </tr> 
                </form>
El php es simplemente:

Código PHP:
 $nombre $_POST["nombre"];
 
$nick $_SESSION["usuario"];
 
$geolat $_POST["geolat"];
 
$geolng $_POST["geolng"];
 
$email $_POST["emailloc"];
  
$web $_POST["web"];
..
.

Y a veces llegan vacios estos $POST

Gracias
  #5 (permalink)  
Antiguo 15/11/2010, 05:27
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Se pierden variables POST aleatoriamente

Hola.
Retomo este tópic que quedó en el olvido porque tengo nuevos datos.

Parece ser que en chrome se da el problema bastante amenudo. El primer click para submitir el formulario es erróneo y llegan las variables POST vacias. Al darle un segundo click funciona bien.
Lo he buscado en google y he encontrado más gente con este problema en este navegador, pero no he conseguido encontrar una solución.

El código de envio en javascript al clickar en el botón de submit es el siguiente:

Código:
(validaciones varias)
.
.
.

document.getElementById("formLocal").action="insertalocal.php?tip='tipoloc';
.
.

Gracias.
Saludos.

Etiquetas: aleatoriamente, post, variables
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 18:55.