elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema con Variables PHP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Problema con Variables PHP  (Leído 15,976 veces)
iMarcSpS

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Problema con Variables PHP
« en: 15 Abril 2012, 15:48 pm »

He creado un formulario vía HTML, haciendo que los datos de esta variable vayan a parar a otro documento llamado saludo.php. Éste es el codigo de los dos documentos, el primero HTML no hay ningun problema, pero al segundo me dice el siguiente error de variables:

Notice: Undefined variable: nombre in C:\xampp\htdocs\saludo.php on line 8

Notice: Undefined variable: apellido in C:\xampp\htdocs\saludo.php on line 8
¡Bienvenido a la página de antiguos alumnos del colegio maravillas!.
Notice: Undefined variable: nacimiento in C:\xampp\htdocs\saludo.php on line 10


Éste es el codigo HTML:

<!- bienvenida.html ->
<html>
<head>
<title>Bienvenida</title>
</head>
<body bgcolor="#FFFFFF">
<div align="center">
<form action="saludo.php" method="post">
<p>&nbsp;</p>
<p><b>Bienvenido a mi p&aacute;gina Web</b></p>
<form name="form1">
<p>Nombre: <input type="text" name="nombre"><BR></p>
<p>Apellido: <input type="text" name="apellido"><BR></p>
<p>A&ntilde;o en que naciste: <input type="text" name="nacimiento"><BR></p>
<input type="submit" value="enviar"></p>
</form>
</div>
</body>
</html>

Y éste es el siguiente codigo PHP:

<!- saludo ->
<html>
<head>
<title>saludo</title>
</head>
<body>
<?
echo "¡Bienvenido $nombre $apellido a la página de antiguos alumnos del colegio maravillas!. ";
$año = 2012;
$edad = $año - $nacimiento;
if ( $edad == 33)
{
echo "Tú y yo fuimos a la misma clase. Porfavor, escríbeme a ricardo@maravillas.com.";
}
elseif ($edad <=23)
{
echo " Eres demasiado joven para haber asistido al colegio Maravillas. Lo siento, esta página no es de tu interés.";
}
elseif ($edad == 34)
{
echo "Tú y todos los de tu curso siempre fuisteis un atajo de matones. Fuera de mi página inmediatamente!";
}
?>
</body>
</html>


Gracias

Marc


En línea

javirk

Desconectado Desconectado

Mensajes: 102


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #1 en: 15 Abril 2012, 16:16 pm »

Hola, los datos de un formulario pasan a la página donde quieres interpretarlos a través de $_POST, de la siguiente manera:
Código
  1. $_POST["nombre_campo_de_la_otra_pagina"]

Así, para recuperar los datos que pasas por el formulario tienes que usar eso, en vez de "inventarte" variables:
Código
  1. <?php
  2. $nombre = $_POST["nombre"];
  3. $apellido = $_POST["apellido"];
  4. echo "¡Bienvenido $nombre $apellido a la página de antiguos alumnos del colegio maravillas!. ";
  5. ?>

Un saludo!


En línea

iMarcSpS

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #2 en: 15 Abril 2012, 16:29 pm »

Muchas Gracias ya esta todo Gracias :)
« Última modificación: 15 Abril 2012, 16:32 pm por iMarcSpS » En línea

iMarcSpS

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #3 en: 15 Abril 2012, 16:42 pm »

Hola, los datos de un formulario pasan a la página donde quieres interpretarlos a través de $_POST, de la siguiente manera:
Código
  1. $_POST["nombre_campo_de_la_otra_pagina"]

Así, para recuperar los datos que pasas por el formulario tienes que usar eso, en vez de "inventarte" variables:
Código
  1. <?php
  2. $nombre = $_POST["nombre"];
  3. $apellido = $_POST["apellido"];
  4. echo "¡Bienvenido $nombre $apellido a la página de antiguos alumnos del colegio maravillas!. ";
  5. ?>

Un saludo!

Gracias por el aporte anterior, a proposito tengo otro problema :(

Se trata de un formulario el cual se ingresa el nombre, etc... Y se crea un usuario a la base de datos:

Código:
<!- alta.php ->
<html>
<head>
<title> Añadir un nuevo alumno </title>
</head>
<body>
<?php
if ($submit):
$dbcnx = mysql_connect("localhost", "root", "tubititu");
mysql_select_db("alumnos");
$sql = "INSERT INTO alumnos SET
mobre = "$nombre",
apellido = "$apellido",
nacimiento = "$nacimiento",
email = "$email"  ";
if ($mysql_query($sql)) {
echo("<p>Alta dada satisfactoriamente</p>");
} else {
echo("<p>Error al darse de alta.: " . mysql_error() . "</p>");
}
?>
<p><a href="<?=$PHP_SELF?>">Añadir un nuevo alumno.</a></p>
<?php
else:
?>
<form action="<?=$PHP_SELF?>" method="post">
<p>Introduzca sus datos:<br />
Nombre: <input type="text" name="nombre" size="20" maxlength="255" /><br />
Apellido: <input type="text" name="apellido" size="20" maxlength="255" /><br />
Fecha de nacimiento (aaaa/mm/dd): <input type="text" name="nacimiento" size="20" maxlength="255" /><br />
Email: <input type="text" name="email" size="20" maxlength="255" /><br />
<input type="submit" name="submit" value="ALTA" /></p>
</form>
<?php endif; ?>
</body>
</html>

Y se me muestra el siguiente error, nuevamente de variables :(

Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\alta.php on line 12
Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\alta.php on line 13
Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\alta.php on line 14
Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\alta.php on line 15
En línea

javirk

Desconectado Desconectado

Mensajes: 102


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #4 en: 15 Abril 2012, 16:47 pm »

Es como lo de antes, ten en cuenta que no puedes poner comillas dobles dentro de otras comillas dobles, si ya tienes dobles, tienes que poner comillas simples:
Código
  1. $sql = "INSERT INTO alumnos SET
  2. mobre = '$nombre',
  3. apellido = '$apellido',
  4. nacimiento = $nacimiento,
  5. email = '$email'  ";

Creo que es por eso, prueba y me dices, porque no he usado nunca lo de SET.

Un saludo!
En línea

iMarcSpS

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #5 en: 15 Abril 2012, 16:56 pm »

Es como lo de antes, ten en cuenta que no puedes poner comillas dobles dentro de otras comillas dobles, si ya tienes dobles, tienes que poner comillas simples:
Código
  1. $sql = "INSERT INTO alumnos SET
  2. mobre = '$nombre',
  3. apellido = '$apellido',
  4. nacimiento = $nacimiento,
  5. email = '$email'  ";

Creo que es por eso, prueba y me dices, porque no he usado nunca lo de SET.

Un saludo!

Sii deacuerdo demomento funciona (El formulario), pero en el codigo:

Código:
if ($submit):
En la linea 8

Me dice lo siguiente:

Notice: Undefined variable: submit in C:\xampp\htdocs\alta.php on line 8
En línea

EFEX


Desconectado Desconectado

Mensajes: 1.171


"Dinero Facil"


Ver Perfil WWW
Re: Problema con Variables PHP
« Respuesta #6 en: 15 Abril 2012, 16:59 pm »

Sii deacuerdo demomento funciona (El formulario), pero en el codigo:

Código
  1. if ($submit):
En la linea 8
Me dice lo siguiente:
Notice: Undefined variable: submit in C:\xampp\htdocs\alta.php on line 8

Tenes que abrir el corchete, esos dos puntos estan de mas.
Código
  1. if ($submit){
En línea

satu


Desconectado Desconectado

Mensajes: 301

Siempre aprendiendo


Ver Perfil WWW
Re: Problema con Variables PHP
« Respuesta #7 en: 15 Abril 2012, 17:00 pm »

Hola

Prueba con:
Código
  1. if(!empty($_POST['submit']))
  2.  

Y quita los dos puntos ( : ) de detrás del if, los de detrás del else y el endif ambién sobra. Recuerda que en PHP los delimitadores son { y }

Saludos


Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.
En línea

Breakbeat como forma de vida
iMarcSpS

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #8 en: 15 Abril 2012, 17:05 pm »

Hola

Prueba con:
Código
  1. if(!empty($_POST['submit']))
  2.  

Y quita los dos puntos ( : ) de detrás del if, los de detrás del else y el endif ambién sobra. Recuerda que en PHP los delimitadores son { y }

Saludos


Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.

He quitado los dos puntos , me sale el mismo error en el "else":

Parse error: syntax error, unexpected T_ELSE in C:\xampp\htdocs\alta.php on line 24

En línea

javirk

Desconectado Desconectado

Mensajes: 102


Ver Perfil
Re: Problema con Variables PHP
« Respuesta #9 en: 15 Abril 2012, 17:09 pm »

Hola,
Prueba poniendo:
Código
  1. }else{

En vez de los dos puntos.

Un saludo
En línea

Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema al recibir dos variables.
Programación Visual Basic
ciruit 2 1,465 Último mensaje 28 Enero 2006, 18:27 pm
por ciruit
Problema de Variables
Programación Visual Basic
Timerlux 5 2,414 Último mensaje 21 Junio 2007, 20:41 pm
por Sancho.Mazorka
[Ayuda]Problema con variables
Programación C/C++
FrancoMoglia 5 2,170 Último mensaje 6 Abril 2016, 18:39 pm
por FrancoMoglia
problema con html y variables
Desarrollo Web
ALBO3000 0 2,005 Último mensaje 16 Octubre 2017, 03:59 am
por ALBO3000
Problema con variables en mi web
Desarrollo Web
extremeño21 2 1,624 Último mensaje 23 Julio 2019, 22:46 pm
por @XSStringManolo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines