Foros del Web » Programando para Internet » PHP »

Problema de variables en distintos servidores

Estas en el tema de Problema de variables en distintos servidores en el foro de PHP en Foros del Web. hola, mi problema es q estoy haciendo un formulario para insertar datos a una bbdd en mi servidor de hospedajesydominios.com me funciona correctamente, pero en ...
  #1 (permalink)  
Antiguo 10/01/2007, 23:19
 
Fecha de Ingreso: diciembre-2006
Mensajes: 6
Antigüedad: 17 años, 3 meses
Puntos: 0
Problema de variables en distintos servidores

hola,
mi problema es q estoy haciendo un formulario para insertar datos a una bbdd
en mi servidor de hospedajesydominios.com me funciona correctamente, pero en otro servidor "plesk 8.0.1" osea https:xxx.xxxxx.es:8443, me dice estos errores en el log de errores

[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: nombre in /formulario.php on line 2
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: apellidos in /formulario.php on line 3
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: sexo in /formulario.php on line 4
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: dia in /formulario.php on line 5
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: mes in /formulario.php on line 5
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: ano in /formulario.php on line 5
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: poblacion in /formulario.php on line 6
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: telefono in /formulario.php on line 7
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined index: correo in /formulario.php on line 8
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined variable: enviar in /formulario.php on line 27
[Thu Jan 11 05:43:38 2007] [error] [client 62.57.81.6] PHP Notice: Undefined variable: enviar in /formulario.php on line 50
[Thu Jan 11 05:44:01 2007] [error] [client 62.57.81.6] PHP Notice: Undefined variable: enviar in /formulario.php on line 27,
[Thu Jan 11 05:44:01 2007] [error] [client 62.57.81.6] PHP Notice: Undefined variable: enviar in /formulario.php on line 50,

y el codigo es éste:
<?php
$nombre=$HTTP_POST_VARS['nombre'];
$apellidos=$HTTP_POST_VARS['apellidos'];
$sexo=$HTTP_POST_VARS['sexo'];
$dia=$HTTP_POST_VARS['dia'];$mes=$HTTP_POST_VARS['mes'];$ano=$HTTP_POST_VARS['ano'];
$poblacion=$HTTP_POST_VARS['poblacion'];
$telefono=$HTTP_POST_VARS['telefono'];
$correo=$HTTP_POST_VARS['correo'];

include("validar_datos.php");
include("querys.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

<html>
<head>
<title>formulario</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.Estilo1 {color: #FFFFFF}
-->
</style></head>

<body>
<?php
if ($enviar)
{
if (!relleno($HTTP_POST_VARS))
{
?><script type="text/javascript">alert("debes rellenar todos los campos");</script> <?php
$enviar=false;
$fallo="incompleto";
}
else
{
if (!$valido=validar_datos_alta($nombre,$apellidos,$s exo,$dia,$mes,$ano,$poblacion,$telefono,$correo))
{
echo "<h3 style=\"color:red; text-align:center\">Ya existe un usuario con ese CORREO !!</h3>";
$enviar=false;
$fallo="duplicado";
}
}
if ($fallo<>"incompleto" && $fallo<>"duplicado")
{
query_alta($nombre,$apellidos,$sexo,$dia,$mes,$ano ,$poblacion,$telefono,$correo);
enviar_email($nombre,$apellidos,$sexo,$dia,$mes,$a no,$poblacion,$telefono,$correo);
}
}
if (!$enviar)
{
?>
<FORM METHOD="post" ACTION="formulario.php">
<table width="333" border="0" bgcolor="#3D3D22" align="center">
<tr>
<td width="140"><span class="Estilo1">Nombre</span></td>
<td width="183"><?php echo"<input name=\"nombre\" type=\"text\" size=\"20\" maxlength=\"20\" value=$nombre>"?></td>
</tr>
<tr>
<td><span class="Estilo1">Apellidos</span></td>
<td><?php echo"<input name=\"apellidos\" type=\"text\" size=\"30\" maxlength=\"30\" value=$apellidos>"?></td>
</tr>
<tr>
<td><span class="Estilo1">Sexo (h/m) </span></td>
<td><?php echo"<input name=\"sexo\" type=\"text\" size=\"1\" maxlength=\"1\" value=$sexo>"?></td>
</tr>
<tr>
<td><span class="Estilo1">Fecha (dd/mm/aaaa) </span></td>
<td><?php echo"<input name=\"dia\" type=\"text\" size=\"2\" maxlength=\"2\" value=$dia>"?>
<?php echo"<input name=\"mes\" type=\"text\" size=\"2\" maxlength=\"2\" value=$mes>"?>
<?php echo"<input name=\"ano\" type=\"text\" size=\"4\" maxlength=\"4\" value=$ano>"?></td>
</tr>
<tr>
<td><span class="Estilo1">Poblaci&oacute;n</span></td>
<td><?php echo"<input name=\"poblacion\" type=\"text\" size=\"20\" maxlength=\"20\" value=$poblacion>"?></td>
</tr>
<tr>
<td><span class="Estilo1">M&oacute;vil</span></td>
<td><?php echo"<input name=\"telefono\" type=\"text\" size=\"9\" maxlength=\"9\" value=$telefono>"?></td>
</tr>
<tr>
<td><span class="Estilo1">Correo</span></td>
<td><?php echo"<input name=\"correo\" type=\"text\" size=\"30\" maxlength=\"30\" value=$correo>"?></td>
</tr>
<tr>
<td colspan="4"><div align="center">
<input type="submit" name="enviar" value="Enviar">
</div></td>
</tr>
</table>
</form>
<?php
}
?>
</body>
</html>

No se q hacer??
Muchas gracias y saludos

Última edición por bydol; 10/01/2007 a las 23:27
  #2 (permalink)  
Antiguo 11/01/2007, 00:01
 
Fecha de Ingreso: noviembre-2004
Mensajes: 159
Antigüedad: 19 años, 5 meses
Puntos: 0
Re: Problema de variables en distintos servidores

No seria mala idea separar tu codigo html de tu codigo php

ese mensaje

Notice: Undefined index: nombre in /formulario.php on line 2

es porque no esta definido

$_POST['nombre'] y asi con otros campos

te recomendaria que ordenes un poco tu codigo, no esta muy legible

Saludos

A. Acosta
  #3 (permalink)  
Antiguo 11/01/2007, 00:11
 
Fecha de Ingreso: diciembre-2005
Ubicación: Redondela (Galicia)
Mensajes: 368
Antigüedad: 18 años, 4 meses
Puntos: 1
Re: Problema de variables en distintos servidores

albertt_t tiene razón, procura separar el código, en la medida de lo posible, claro...

Otra cosa, prueba a no utilizar la forma $HTTP_POST_VARS[], y en su lugar utiliza $_POST[], que es la forma nueva
  #4 (permalink)  
Antiguo 11/01/2007, 00:39
 
Fecha de Ingreso: diciembre-2006
Mensajes: 6
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Problema de variables en distintos servidores

ok.
trataré de estructurarlo mejor
con respecto a las variables lo he sustituído x el $_POST[], pero nada.
da el error undefined index ejemplo ["nombre"] - ¿Cómo se declaran los índices?
y respecto al $enviar le he puesto if (isset($enviar)){$enviar=false} pero nada
undefined variable
puede ser q tengan los servidores diferentes versiones de php o más bien la configuración de php.ini...y en uno funcione y en otro no??
  #5 (permalink)  
Antiguo 11/01/2007, 02:43
Avatar de oso96_2000  
Fecha de Ingreso: junio-2002
Ubicación: Distrito Federal
Mensajes: 558
Antigüedad: 21 años, 10 meses
Puntos: 35
Re: Problema de variables en distintos servidores

$nombre = isset($_POST['nombre']) ? $_POST['nombre'] : '' ;

Etc con cada uno de los demas, y en cuanto al de $enviar..

if (isset($_POST['enviar'])) {

Los errores son porque no existen esas variables cuando recien abres la pagina, supongo que al enviar el formulario no salen (excepcion del de $enviar).

Si en el script pones por ahi al principio del mismo un error_reporting(E_ALL); tu mismo verás los errores en el php al ejecutarlo..

Saludos =)
__________________
Sin Ideas
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 05:41.