Título: Problema con Variables PHP Publicado por: iMarcSpS 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> </p> <p><b>Bienvenido a mi pá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ñ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 Título: Re: Problema con Variables PHP Publicado por: javirk 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
Así, para recuperar los datos que pasas por el formulario tienes que usar eso, en vez de "inventarte" variables: Código
Un saludo! Título: Re: Problema con Variables PHP Publicado por: iMarcSpS en 15 Abril 2012, 16:29 pm Muchas Gracias ya esta todo Gracias :)
Título: Re: Problema con Variables PHP Publicado por: iMarcSpS 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
Así, para recuperar los datos que pasas por el formulario tienes que usar eso, en vez de "inventarte" variables: Código
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 -> 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 Título: Re: Problema con Variables PHP Publicado por: javirk 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
Creo que es por eso, prueba y me dices, porque no he usado nunca lo de SET. Un saludo! Título: Re: Problema con Variables PHP Publicado por: iMarcSpS 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
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): Me dice lo siguiente: Notice: Undefined variable: submit in C:\xampp\htdocs\alta.php on line 8 Título: Re: Problema con Variables PHP Publicado por: EFEX en 15 Abril 2012, 16:59 pm Sii deacuerdo demomento funciona (El formulario), pero en el codigo: Código 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
Título: Re: Problema con Variables PHP Publicado por: satu en 15 Abril 2012, 17:00 pm Hola
Prueba con: Código 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. Título: Re: Problema con Variables PHP Publicado por: iMarcSpS en 15 Abril 2012, 17:05 pm Hola Prueba con: Código 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 Título: Re: Problema con Variables PHP Publicado por: javirk en 15 Abril 2012, 17:09 pm Hola,
Prueba poniendo: Código
En vez de los dos puntos. Un saludo Título: Re: Problema con Variables PHP Publicado por: EFEX en 15 Abril 2012, 17:13 pm Mas adelante tenes que quitar el endif; y agregar un corchete final.
Código
Algo para agregar, es que se pueden usar los dos puntos con if, como lo explica en php (http://php.net/manual/es/control-structures.alternative-syntax.php) Pero para usar los dos puntos y corchetes se deve agregar un punto y coma al final del cierre del if{}; Código
Título: Re: Problema con Variables PHP Publicado por: satu en 15 Abril 2012, 17:20 pm No sabía yo eso de los : en los if
Muy bueno EFEX Título: Re: Problema con Variables PHP Publicado por: iMarcSpS en 15 Abril 2012, 17:20 pm Mas adelante tenes que quitar el endif; y agregar un corchete final. Código
Algo para agregar, es que se pueden usar los dos puntos con if, como lo explica en php (http://php.net/manual/es/control-structures.alternative-syntax.php) Pero para usar los dos puntos y corchetes se deve agregar un punto y coma al final del cierre del if{}; Código
Me sale lo mismo os paso el codigo final que tengo ahora haber si encontramos el fallo: Código: <title> Añadir un nuevo alumno </title> Título: Re: Problema con Variables PHP Publicado por: javirk en 15 Abril 2012, 17:28 pm Hola, falta el { en el primer if, y el } a la izquierda del else.
Título: Re: Problema con Variables PHP Publicado por: satu en 15 Abril 2012, 17:29 pm Hola
Código
Saludos Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje. Título: Re: Problema con Variables PHP Publicado por: EFEX en 15 Abril 2012, 17:33 pm Hay quedo mas ordenado por satu ;D
Podes pasar por el sitio oficial de php, tienen documentacion que te interesará. Estructuras de Control http://www.php.net/manual/es/language.control-structures.php (http://www.php.net/manual/es/language.control-structures.php) Título: Re: Problema con Variables PHP Publicado por: satu en 15 Abril 2012, 17:40 pm Hola
Además he añadido algunas cosas porque al solucionar el error de las llaves tiraba errores de variables no inicializadas: Código
Saludos Título: Re: Problema con Variables PHP Publicado por: iMarcSpS en 15 Abril 2012, 17:43 pm Hola Código
Saludos Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje. Y Que error hay en este me sale esto: Parse error: syntax error, unexpected $end in C:\xampp\htdocs\queridos.php on line 70 Código: <!- queridos.php -> Título: Re: Problema con Variables PHP Publicado por: EFEX en 15 Abril 2012, 17:52 pm Revisa el cierre y apertura de los if{}.
Título: Re: Problema con Variables PHP Publicado por: satu en 15 Abril 2012, 17:54 pm Hola
EFEX te ha dicho cómo solucionarlo. Además en el if de debajo te sobra el ; Y además sigues teniendo los mismos errores que intento corregirte desde el principio. La variable $bueno no la tienes inicializada. Además te aconsejo que identes el código con tabuladores para que sea más legible . Saludos Título: Re: Problema con Variables PHP Publicado por: iMarcSpS en 15 Abril 2012, 18:03 pm Hola EFEX te ha dicho cómo solucionarlo. Además en el if de debajo te sobra el ; Y además sigues teniendo los mismos errores que intento corregirte desde el principio. La variable $bueno no la tienes inicializada. Además te aconsejo que identes el código con tabuladores para que sea más legible . Saludos Lo solucione! Gracias, al pulsar "Vota!" me dice que no se encuentra la página pero eso ahora mismo no importa porque actualizas la página anterior y se me actualiza el voto, pero lo que no entiendo es porque los votos se me suman solo al ultimo :S Gracias Marc Título: Re: Problema con Variables PHP Publicado por: mastercar09 en 13 Septiembre 2012, 06:05 am Hola me surguio un problema alguien que pueda ayudarme.
Este es el problema que me sale: Parse error: syntax error, unexpected 'var' (T_VAR) in C:\xampp\htdocs\email\enviar.php on line 8 mi codigo: index.php <div id="content"> <form id="email" method="post" action="enviar.php" enctype="multipart/form-data"> <fieldset> <p><label>Nombre: <input type="text" name="nombre" id="nombre" /></label></p> <p><label>Email: <input type="text" name="email" id="email" /></label></p> <p><label>Asunto: <input type="text" name="asunto" id="asunto" /></label></p> Comentario: <p><label><textarea cols="35" rows="10" name="texto" id="texto"></textarea></label></p> <p><input type="submit" name="enviar" id="enviar" value="Enviar" /></p> </fieldset> </form> </div> otro codigo: enviar.php <?php if(!empty($_POST)){ if($_POST["nombre"] != "" && $_POST["email"] != "" && $_POST["ausnto"] != "" && $_POST["texto"] != ""){ include("class.phpmailer.php"); $usuarioGmail="mastercar09@gmail.com"; $contraGmail="04chiverio"; var $email = new PHPMailer(); $email->IsSMTP(); $email->SMTPAuth = true; $email->SMTPSecure = "ssl"; $email->Host = "smtp.gmail.com" $email->Port = "465"; $email->Username = $usuarioGmail; $email->Password = $contraGmail; $email->FromName = $_POST["nombre"]; $email->AddReplyTo($usuarioGmail,"Carlos Valenzuela"); $email->Subject = $_POST["asunto"]; $email->Body = $_POST["texto"]; $email->AddAddress($_POST["email"],$_POST["name"]); if(!$email->Send()){ print '<p>Error al enviar el mensaje'.$email->ErrorInfo.'</p>'; }else{ print '<p>Mensaje enviado</p>'; } } }else{ print '<p>Error del array post</p>'; } ?> Título: Re: Problema con Variables PHP Publicado por: arthusu en 13 Septiembre 2012, 06:41 am Hola me surguio un problema alguien que pueda ayudarme. Este es el problema que me sale: Parse error: syntax error, unexpected 'var' (T_VAR) in C:\xampp\htdocs\email\enviar.php on line 8 mi codigo: index.php <div id="content"> <form id="email" method="post" action="enviar.php" enctype="multipart/form-data"> <fieldset> <p><label>Nombre: <input type="text" name="nombre" id="nombre" /></label></p> <p><label>Email: <input type="text" name="email" id="email" /></label></p> <p><label>Asunto: <input type="text" name="asunto" id="asunto" /></label></p> Comentario: <p><label><textarea cols="35" rows="10" name="texto" id="texto"></textarea></label></p> <p><input type="submit" name="enviar" id="enviar" value="Enviar" /></p> </fieldset> </form> </div> otro codigo: enviar.php <?php if(!empty($_POST)){ if($_POST["nombre"] != "" && $_POST["email"] != "" && $_POST["ausnto"] != "" && $_POST["texto"] != ""){ include("class.phpmailer.php"); $usuarioGmail="mastercar09@gmail.com"; $contraGmail="04chiverio"; var $email = new PHPMailer(); $email->IsSMTP(); $email->SMTPAuth = true; $email->SMTPSecure = "ssl"; $email->Host = "smtp.gmail.com" $email->Port = "465"; $email->Username = $usuarioGmail; $email->Password = $contraGmail; $email->FromName = $_POST["nombre"]; $email->AddReplyTo($usuarioGmail,"Carlos Valenzuela"); $email->Subject = $_POST["asunto"]; $email->Body = $_POST["texto"]; $email->AddAddress($_POST["email"],$_POST["name"]); if(!$email->Send()){ print '<p>Error al enviar el mensaje'.$email->ErrorInfo.'</p>'; }else{ print '<p>Mensaje enviado</p>'; } } }else{ print '<p>Error del array post</p>'; } ?> var $email = new PHPMailer(); quitale var dejalo asi: $email = new PHPMailer(); prueba de nuevo :xD Título: Re: Problema con Variables PHP Publicado por: mastercar09 en 13 Septiembre 2012, 06:48 am ya le cambie lo que me dijiste y sigue saliendo el mismo error
Parse error: syntax error, unexpected '$email' (T_VARIABLE) in C:\xampp\htdocs\email\enviar.php on line 13 enviar.php <?php if(!empty($_POST)){ if($_POST["nombre"] != "" && $_POST["email"] != "" && $_POST["ausnto"] != "" && $_POST["texto"] != ""){ include("class.phpmailer.php"); $usuarioGmail="mastercar09@gmail.com"; $contraGmail="04chiverio"; $email = new PHPMailer(); $email->IsSMTP(); $email->SMTPAuth = true; $email->SMTPSecure = "ssl"; $email->Host = "smtp.gmail.com" $email->Port = "465"; $email->Username = $usuarioGmail; $email->Password = $contraGmail; $email->FromName = $_POST["nombre"]; $email->AddReplyTo($usuarioGmail,"Carlos Valenzuela"); $email->Subject = $_POST["asunto"]; $email->Body = $_POST["texto"]; $email->AddAddress($_POST["email"],$_POST["name"]); if(!$email->Send()){ print '<p>Error al enviar el mensaje'.$email->ErrorInfo.'</p>'; }else{ print '<p>Mensaje enviado</p>'; } } }else{ print '<p>Error del array post</p>'; } ?> Título: Re: Problema con Variables PHP Publicado por: mastercar09 en 13 Septiembre 2012, 06:51 am var $email = new PHPMailer(); quitale var dejalo asi: $email = new PHPMailer(); prueba de nuevo :xD ya le quite eso y sigue saliendo el mismo error :S Título: Re: Problema con Variables PHP Publicado por: arthusu en 13 Septiembre 2012, 07:48 am ya le quite eso y sigue saliendo el mismo error :S intenta utilizando eso en un servidor gratuito y no en tu localhost no se si php mailer necesite de servidor smtp y ssl o si tengas abierto el puerto necesario, por lo que mejor es probarlo en un servidor bien configurado como uno gratuito de 000webhost y probar :) :xD |