Foros del Web » Programando para Internet » PHP »

problema con $HTTP_POST_VARS

Estas en el tema de problema con $HTTP_POST_VARS en el foro de PHP en Foros del Web. hola amigos como estan ... espero q bien tengo una consulata que hacerles. Lo que pasa esuqe toy trabajndo con php y tratando de recuperar ...
  #1 (permalink)  
Antiguo 07/08/2008, 10:36
 
Fecha de Ingreso: noviembre-2004
Mensajes: 181
Antigüedad: 19 años, 5 meses
Puntos: 1
De acuerdo problema con $HTTP_POST_VARS

hola amigos como estan ... espero q bien tengo una consulata que hacerles.
Lo que pasa esuqe toy trabajndo con php y tratando de recuperar las bariables por post enviadas pero no me resulta no se enrealidad que estoy haciendo mal por q cuando buelvo atras en la barra de navegacion del inet los datos ingreador por el usuraio ya no estan y se pierden entonces los queriarescatar de esta forma pero no me resulta ........ les post el codigo para q me den una mano porfa ....



<?php
echo"".$HTTP_POST_VARS['txtnombre']."";
if ($pasar==1)
{
$enlace = mysql_connect("localhost", "root", "")or die("No pudo conectarse : " . mysql_error());
mysql_select_db("sisproed") or die("No pudo seleccionarse la BD.");
$txtrut = $txtrut."-".$digito;
$sqlq = " INSERT INTO PROFESOR__PROF( PROF_RUT,
CIUD_CODIGO,
PROF_NOMBRE,
PROF_APELLIDO_PATERNO)
VALUES ('".$txtrut."',
'".$ciudad."',
'".$txtnombre."',
'".$txtapellidopaterno."')";
$ress=mysql_db_query("sisproed",$sqlq);
if (!$ress)
{
echo "<center><h2><strong><pre>No se pudo insertar en la base de datos, Vuelva atras con el browser</pre></strong></h2></center>\n<br>";
}
else
{
echo "<center><h2><strong><pre>El registo fue insertado en la base de datos</pre></strong></h2></center><br>";
}
}

else
{
session_start();
echo"<form action='prueba.php?pasar=1' method='post' enctype='multipart/form-data' name='form1'>\n";
echo "<center><h2><strong><pre>Agregar Profesor</pre></strong></h2></center><br><br>";
echo"<table border='0' width='60%' align='center' CELLPADDING = '0' CELLSPACING = '0'>\n";
echo"<tr>\n";
echo"<td width='33%' ><pre>Rut Profesor</pre></td>\n";
echo"<td width='34%' align='center' > <div align='left'>\n";
echo"<input name='txtrut' type='text' value='' size='7' maxlength='8'>\n";
echo"<input name='digito' type='text' value='' size='1' maxlength='1'></td>";
echo"</div></td>\n";
echo"</tr>";
echo"<tr>";
echo"<td width='33%'><pre>Nombre Profesor</b></pre></td>\n";
echo"<td width='34%' align='center'> <div align='left'>\n";
echo"<input name='txtnombre' type='text' value='".$HTTP_POST_VARS['txtnombre']."' size='15' maxlength='30'>\n";
echo"</div></td>\n";
echo"</tr>";

echo"<tr>";
$enlace = mysql_connect("localhost", "root", "")or die("No pudo conectarse : " . mysql_error());
mysql_select_db("sisproed") or die("No pudo seleccionarse la BD.");
$sql1 = "SELECT ciud_nombre FROM CIUDAD__CIUD";
$res = mysql_query($sql1) or die("La consulta fall&oacute;: " . mysql_error());
$num=mysql_numrows($res);
echo "<td><pre>Ciudad </pre></td>";
echo "<td ><select name='ciudad' id='ciudad'>";
echo "<option value=''>(seleccione ciudad)</option>";
for ($i=0; $i<$num; $i++)
{
$CIUD_CODIGO=mysql_result($res,$i,"CIUD_CODIGO");
$CIUD_NOMBRE=mysql_result($res,$i,"CIUD_NOMBRE");
echo "<option value=$CIUD_CODIGO>$CIUD_NOMBRE</option>";
}
echo "</select></td>";
////////////////////////////////
echo "</tr>";
echo"<tr>";
echo"<td width='33%'><pre>Apellido Paterno</b></pre></td>\n";
echo"<td width='34%' align='center'> <div align='left'>\n";
echo"<input name='txtapellidopaterno' type='text' value='' size='15' maxlength='30'>\n";
echo"</div></td>\n";
echo"</tr>";

echo"</table>\n";
echo"<center><input type='submit' name='btnagregar' value='Agregar' ></center>\n";
echo"</form>\n";
echo"</body>\n";
echo"</html>\n";
}

?>
me explico mejor lo quiero es q cuando el usuario alla ingresados los datos y buelva atras en caso de alguna falla esten los datos ahy en el cuadro de texto cosa que cambie solo el q esta erroneo ahy les puse en rojo como lo rescato y lo paso al cuadro de texto en caso de volver atras...
  #2 (permalink)  
Antiguo 07/08/2008, 10:47
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 20 años, 9 meses
Puntos: 2
Respuesta: problema con $HTTP_POST_VARS

debes usar las variables Superglobales en tu $_POST["variable"]
Mas informacion en http://www.desarrolloweb.com/articulos/309.php
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #3 (permalink)  
Antiguo 07/08/2008, 10:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con $HTTP_POST_VARS

generalmente, estas variables largas quedaran obsoletas....

en ves de esta, intenta usar su forma estandar... $_POST['txtnombre'];


suerte!

PDTA: una preguntota... ¿¿¿que sentido tiene poner comillas vacias alrededor de las variables??? :S

Código PHP:
echo"".$HTTP_POST_VARS['txtnombre'].""
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 07/08/2008, 10:52
Avatar de Taldreakan  
Fecha de Ingreso: julio-2008
Mensajes: 128
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: problema con $HTTP_POST_VARS

La unica forma de recuperar variables POST es desde un formulario de envio, despues de eso se pierden.

Creo que lo que estas buscando lo podrias solucionar registrando variables de sesion, estas no se pierden cuando pases de una pantalla a otra.
  #5 (permalink)  
Antiguo 07/08/2008, 11:14
 
Fecha de Ingreso: noviembre-2004
Mensajes: 181
Antigüedad: 19 años, 5 meses
Puntos: 1
Respuesta: problema con $HTTP_POST_VARS

y como podria aplicar variables de secion en este formulario ....?
tambien e intentado con $_POST y no me resulta ...
  #6 (permalink)  
Antiguo 07/08/2008, 11:20
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: problema con $HTTP_POST_VARS

Pones
session_start(); al principio de tu codigo
y luego defines las variables de session de la siguiente manera:
$_SESSION['txtnombre'] = $_POST['txtnombre'];
Eso es todo ... Luego llamas a la variable como: $_SESSION['txtnombre']
  #7 (permalink)  
Antiguo 07/08/2008, 11:32
 
Fecha de Ingreso: noviembre-2004
Mensajes: 181
Antigüedad: 19 años, 5 meses
Puntos: 1
Respuesta: problema con $HTTP_POST_VARS

coloque el session_start(); al principio como dijiste
luego este codigo
$_SESSION['txtnombre']=$_POST['txtnombre'];
para rescatara la bariable

luego en el cuadro de texto para obtener el valor si buelve atras lo sgte
echo"<input name='txtnombre' type='text' value='".$_SESSION['txtnombre']."' size='15' maxlength='30'>\n";
pero me muestra en campo vacio igual ... :S por q puede ser....
  #8 (permalink)  
Antiguo 07/08/2008, 12:01
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: problema con $HTTP_POST_VARS

No se si tenga algo que ver, pero en tu formulario, porque pones el enctype asi:
¿enctype='multipart/form-data'?
Eliminalo, a ver si te funciona. Sino :P Pues ni idea
  #9 (permalink)  
Antiguo 07/08/2008, 12:07
 
Fecha de Ingreso: noviembre-2004
Mensajes: 181
Antigüedad: 19 años, 5 meses
Puntos: 1
Respuesta: problema con $HTTP_POST_VARS

no era eso :( ..........eso es para el manejo de archivos ..... pero no me funciono :(
  #10 (permalink)  
Antiguo 07/08/2008, 13:47
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: problema con $HTTP_POST_VARS

Despues de mucho peliarme con tu codigo logre que las grabara.
A mi lo que me lo resolvio fue cambiar $HTTP_POST_VARS por $_POST
Pero eso depende de la version de PHP que tengas, en mi caso yo tengo la version 5.2.5

Código PHP:
<?php
if (isset($_POST['btnagregar']))
    {
        
$enlace mysql_connect("localhost""root""")or die("No pudo conectarse : " mysql_error());
        
mysql_select_db("sisproed") or die("No pudo seleccionarse la BD.");
        
$txtrut $txtrut."-".$digito;
        
$sqlq "INSERT INTO PROFESOR__PROF( PROF_RUT, CIUD_CODIGO, PROF_NOMBRE, PROF_APELLIDO_PATERNO) VALUES ('".$txtrut."', '".$ciudad."', '".$txtnombre."', '".$txtapellidopaterno."')";
        
$ress=mysql_db_query("sisproed",$sqlq);
            if (!
$ress)
            {
                
$error '<center><h2><strong><pre>No se pudo insertar en la base de datos.</pre></strong></h2></center><br><br>';
            }
            else {
                
$success '<center><h2><strong><pre>El registo fue insertado en la base de datos.</pre></strong></h2></center><br>';
            }
        
    }
?>
<?php 
if(isset($error)) { echo $error; } ?>
<?php 
if(isset($success)) { echo $success; } else {
echo 
'<form action="'.$_SERVER['PHP_SELF'].'" method="post" name="form1"><br>';
echo 
'<center><h2><strong><pre>Agregar Profesor</pre></strong></h2></center><br><br>';
echo 
'<table border="0" width="60%" align="center" CELLPADDING = "0" CELLSPACING = "0"><br>';
echo 
'<tr><br>';
echo 
'<td width="33%" ><pre>Rut Profesor</pre></td><br>';
echo 
'<td width="34%" align="center" ><div align="left"><br>';
echo 
'<input name="txtrut" type="text" value="'.$_POST['txtrut'].'" size="7" maxlength="8"> ';
echo 
'<input name="digito" type="text" value="'.$_POST['digito'].'" size="1" maxlength="1"></td>';
echo 
'</div></td><br>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td width="33%"><pre>Nombre Profesor</b></pre></td><br>';
echo 
'<td width="34%" align="center"><div align="left"><br>';
echo 
'<input name="txtnombre" type="text" value="'.$_POST['txtnombre'].'" size="15" maxlength="30"><br>';
echo 
'<input type="submit" name="btnagregar" value="Agregar" /></div></td><br>';
echo 
'</tr>';
echo 
'<tr>';
$enlace mysql_connect("localhost""root""")or die("No pudo conectarse : " mysql_error());
mysql_select_db("sisproed") or die("No pudo seleccionarse la BD.");
$sql1 "SELECT ciud_nombre FROM CIUDAD__CIUD";
$res mysql_query($sql1) or die("La consulta fall&oacute;: " mysql_error());
$num=mysql_numrows($res);
echo 
'<td><pre>Ciudad </pre></td>';
echo 
'<td ><select name="ciudad" id="ciudad">';
echo 
'<option value="">(Seleccione Ciudad)</option>';
for (
$i=0$i<$num$i++)
{
$CIUD_CODIGO=mysql_result($res,$i,"CIUD_CODIGO");
$CIUD_NOMBRE=mysql_result($res,$i,"CIUD_NOMBRE");
echo 
'<option value="'.$CIUD_CODIGO.'">'.$CIUD_NOMBRE.'</option>';
}
echo 
'</select></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td width="33%"><pre>Apellido Paterno</b></pre></td><br>';
echo 
'<td width="34%" align="center"> <div align="left"><br>';
echo 
'<input name="txtapellidopaterno" type="text" value="" size="15" maxlength="30"><br>';
echo 
'</div></td><br>';
echo 
'</tr>';
echo 
'</table><br>';
echo 
'<center><input type="submit" name="btnagregar" value="Agregar"></center><br>';
echo 
'</form><br>';
echo 
'</body><br>';
echo 
'</html><br>';
}
?>
  #11 (permalink)  
Antiguo 07/08/2008, 15:46
 
Fecha de Ingreso: noviembre-2004
Mensajes: 181
Antigüedad: 19 años, 5 meses
Puntos: 1
Respuesta: problema con $HTTP_POST_VARS

muchas gracias ronruby por tu respuesta y solucion a mi duda y resulta ahora pero tengo unas dudas
por que en acction del form le colocas esto: action="'.$_SERVER['PHP_SELF'].'" que significa
vale te pasaste men... :)
  #12 (permalink)  
Antiguo 08/08/2008, 01:22
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: problema con $HTTP_POST_VARS

Significa que el formulario ejecutara el codigo que esta en la misma pagina. Sin necesidad de otro archivo adicional.

http://www.php.net/manual/es/reserve...les.server.php

Última edición por Ronruby; 08/08/2008 a las 01:27
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:43.