Foros del Web » Programando para Internet » PHP »

formulario php

Estas en el tema de formulario php en el foro de PHP en Foros del Web. hola, pues tenia una consulta , ya que tengo que hacer un formulario de horoscopos . Osea un formulario ,que me pida solo la fecha ...
  #1 (permalink)  
Antiguo 13/12/2013, 12:07
 
Fecha de Ingreso: noviembre-2013
Ubicación: barcelona
Mensajes: 11
Antigüedad: 10 años, 5 meses
Puntos: 0
formulario php

hola, pues tenia una consulta , ya que tengo que hacer un formulario de horoscopos . Osea un formulario ,que me pida solo la fecha de nacimiento ej(10-11-1990) y me diga que signo soy y la fecha que puesto ; pero me da error al juntar el formulario y el script en php, mas bien no me sale el formulario en pantalla. y me gustario ponerlo todo en una pagina gracias.


Código PHP:
<?php
$data
='01-01-2000';
function 
signe_zodiac($data){ 

        
   
$zodiac ''
         
   list ( 
$dia$mes$ano ) = explode "-"$data ); 
   
   if     ( ( 
$mes == && $dia 19 )  || ( $mes == && $dia 19 ) )  { $zodiac "Aquari"; }
   elseif ( ( 
$mes == && $dia 18 )  || ( $mes == && $dia 21 ) )  { $zodiac "Pisces"; } 
   elseif ( ( 
$mes == && $dia 20 )  || ( $mes == && $dia 20 ) )  { $zodiac "Àries"; } 
   elseif ( ( 
$mes == && $dia 19 )  || ( $mes == && $dia 21 ) )  { $zodiac "Taure"; } 
   elseif ( ( 
$mes == && $dia 20 )  || ( $mes == && $dia 21 ) )  { $zodiac "Bessons"; } 
   elseif ( ( 
$mes == && $dia 20 )  || ( $mes == && $dia 23 ) )  { $zodiac "Càncer"; } 
   elseif ( ( 
$mes == && $dia 22 )  || ( $mes == && $dia 23 ) )  { $zodiac "LLeó"; } 
   elseif ( ( 
$mes == && $dia 22 )  || ( $mes == && $dia 23 ) )  { $zodiac "Verge"; } 
   elseif ( ( 
$mes == && $dia 22 )  || ( $mes == 10 && $dia 23 ) ) { $zodiac "Balança"; } 
   elseif ( ( 
$mes == 10 && $dia 22 ) || ( $mes == 11 && $dia 22 ) ) { $zodiac "Escorpió"; } 
   elseif ( ( 
$mes == 11 && $dia 21 ) || ( $mes == 12 && $dia 22 ) ) { $zodiac "Sagitari"; } 
   elseif ( ( 
$mes == 12 && $dia 21 ) || ( $mes == && $dia 20 ) )  { $zodiac "Capricorn"; } 

   return 
$zodiac
    }


if  (
$_POST['enviar']){
echo 
"<strong>He nascut el dia <strong>".$data;
echo 
"<br>";
echo 
"<strong>El mes signe es </strong>".signe_zodiac($data);
}else
{
?>
<form name="exercici4" method="POST" action="">
Data de naixament:
<input type="text" name="data">

<input type="submit" name="enviar">
<input type="reset" name="esborrar">
</form>
<?php
}
?>
  #2 (permalink)  
Antiguo 13/12/2013, 12:17
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: formulario php

Hola.

Veo que tomaste esa fuente de otra pagina.

Si envias la informacion por post asi debes procesarla.
Código PHP:
Ver original
  1. if  ($_POST['enviar']){
  2. echo "<strong>He nascut el dia <strong>".$_POST['data'];
  3. echo "<br>";
  4. echo "<strong>El mes signe es </strong>".signe_zodiac($_POST['data']);
  5. }
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 13/12/2013, 15:43
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: formulario php

Creo que deberías evaluar el valor de $_POST["data"] en lugar del de $_POST["enviar"], ya que solamente representa al botón que envía la información del formulario y lo que te interesa saber es la fecha ingresada.

Código PHP:
Ver original
  1. if ($_POST["data"]){
  2.     echo "<strong>He nascut el dia <strong>".$_POST['data'];
  3.     echo "<br>";
  4.     echo "<strong>El mes signe es </strong>".signe_zodiac($_POST['data']);
  5. }

Borra la variable $data que colocas al inicios, de otros modo, aunque ingreses una fecha distinta en el formulario, siempre evaluará el valor de $data, excepto que implementes el cambio de $data por $_POST["data"].

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #4 (permalink)  
Antiguo 13/12/2013, 18:04
 
Fecha de Ingreso: noviembre-2013
Ubicación: barcelona
Mensajes: 11
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: formulario php

hola pues me ha servido de ayuda vuestras respuestas , soy nuevo en esto del php.
he cambiado lo que me habéis dicho pero me salia error"undefined index data".
Asi que puse un isset y me funciona; lo que pasa que sale el formulario en la misma pagina pero el resultado me sale pero sin el formulario como hago, para que si envio para que aparezca arriba mismo el resultado.No se si cambiando el isset o los echos de sitio pero no me sale.
Gracias de antemano

Código PHP:
if  (isset($_POST['data'])){
echo "<strong>He nascut el dia <strong>".$_POST['data'];
echo "<br>";
echo "<strong>El mes signe es </strong>".signe_zodiac($_POST['data']);
}
else
{
?>
<form name="exercici4" method="POST" action="">
Data de naixament:
<input type="text" name="data">
<input type="submit" name="enviar">
<input type="reset" name="esborrar">
</form>
<?php
}
?>
  #5 (permalink)  
Antiguo 13/12/2013, 21:45
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: formulario php

Para solucionar lo del undefined index data, ponle un id a la caja:

Código HTML:
Ver original
  1. <input type = "text" name = "data" id = "data" />

Hay algunos navegadores que reconocen el id y no el name y viceversa. Para que siga saliendo el formulario, no coloques el else, déjalo así:

Código PHP:
Ver original
  1. <?php
  2. if (isset($_POST["data"])){
  3.     echo "<strong>He nascut el dia <strong>".$_POST['data'];
  4.     echo "<br>";
  5.     echo "<strong>El mes signe es </strong>".signe_zodiac($_POST['data']);
  6. }
  7. ?>
  8. <form name="exercici4" method="POST" action="">
  9.     Data de naixament:
  10.     <input type = "text" name = "data" id = "data" />
  11.     <input type = "submit" name = "enviar" />
  12.     <input type = "reset" name = "esborrar" />
  13. </form>

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #6 (permalink)  
Antiguo 14/12/2013, 04:39
 
Fecha de Ingreso: noviembre-2013
Ubicación: barcelona
Mensajes: 11
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: formulario php

solucionado , muchas gracias !!

Etiquetas: fecha, formulario
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 16:53.