Foros del Web » Programando para Internet » PHP »

Problema de "" y concatenacion

Estas en el tema de Problema de "" y concatenacion en el foro de PHP en Foros del Web. Hola, estoy tratando de resolver este ejercicio pero me tira el error que puse abajo. La idea es que compare con 21 y diga si ...
  #1 (permalink)  
Antiguo 21/05/2011, 12:03
 
Fecha de Ingreso: mayo-2011
Mensajes: 23
Antigüedad: 12 años, 10 meses
Puntos: 0
Problema de "" y concatenacion

Hola, estoy tratando de resolver este ejercicio pero me tira el error que puse abajo. La idea es que compare con 21 y diga si es mayor o menor de edad. Estoy en mis primeros pasos en PHP y no logro darme cuenta del error y si me falta algo más. Muchas gracias desde ya en lo que me puedan ayudar.

<?php if($_SERVER['REQUEST_METHOD']=="GET"){ ?>
<form method="POST">
Edad
<input type="text" name="edad" />
<br />
Nombre
<input type="text" name="nom" />

<input type="submit"/>

</form>
<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){

if(($_POST["edad"]) < 21){
echo $_POST["nom"].' y es menor de edad';
}
else (($_POST["edad"]) >= 21){
echo $_POST["nom"].' y es mayor de edad';
}
}
?>


Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in C:\xampp\htdocs\ejercicios\ejercicio1.php on line 16
  #2 (permalink)  
Antiguo 21/05/2011, 12:10
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema de "" y concatenacion

el problema que le encontre a tu codigo fue que el else no lleva condicion, si deseas colocar una condicion debes de utilizar elseif(/*condicion*/), esto en esta linea
Cita:
else (($_POST["edad"]) >= 21){
deberia de ser asi
Código PHP:
Ver original
  1. elseif (($_POST["edad"]) >= 21){
saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 21/05/2011, 12:26
 
Fecha de Ingreso: mayo-2011
Mensajes: 23
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Problema de "" y concatenacion

Gracias por el ejemplo, ya lo modifique pero me sigue mostrando el mismo error de sintaxis en la linea 16.

Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in C:\xampp\htdocs\ejercicios\ejercicio1.php on line 16

<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){

if(($_POST["edad"]) < 21){
echo $_POST["nom"].' y es menor de edad'; //Linea 16
}
else (($_POST["edad"]) >= 21){
echo $_POST["nom"].' y es mayor de edad';
}
}
?>
  #4 (permalink)  
Antiguo 21/05/2011, 12:33
Avatar de scorpion3d  
Fecha de Ingreso: mayo-2011
Mensajes: 92
Antigüedad: 12 años, 10 meses
Puntos: 19
Respuesta: Problema de "" y concatenacion

carlos_belisario tiene razon, puedes hacer eso o simplemente dejar tu codigo así:

<?php if($_SERVER['REQUEST_METHOD']=="GET"){ ?>
<form method="POST">
Edad
<input type="text" name="edad" />
<br />
Nombre
<input type="text" name="nom" />

<input type="submit"/>

</form>
<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){

if(($_POST["edad"]) < 21){
echo $_POST["nom"].' y es menor de edad';
}
else {
echo $_POST["nom"].' y es mayor de edad';
}
}
?>

cuando usas un if este valida si tu variable es true o false y genera un evento a partir del resultado es decir, que si tienes que la edad 'X' es mayor a un numer 'Y' entoces muestre un valor 'A' de lo contrario muestre un valor 'B'.

si te fijas ambos resultados dependen de una sola validacion
__________________
www.elias.com.sv
  #5 (permalink)  
Antiguo 21/05/2011, 12:38
Avatar de xtimed  
Fecha de Ingreso: julio-2009
Ubicación: BCN - México
Mensajes: 226
Antigüedad: 14 años, 8 meses
Puntos: 41
Respuesta: Problema de "" y concatenacion

Te falta ponerle if al ultimo else, te quedaria así:
Código PHP:
<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){
    if((
$_POST["edad"]) < 21){
        echo 
$_POST["nom"].' y es menor de edad';
    }
    else if((
$_POST["edad"]) >= 21){
        echo 
$_POST["nom"].' y es mayor de edad';
    }
}
?>
  #6 (permalink)  
Antiguo 21/05/2011, 13:04
 
Fecha de Ingreso: mayo-2011
Mensajes: 23
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Problema de "" y concatenacion

Comprendo y modifique el codigo en la parte del else if pero me sigue apareciendo el error de sintaxis en la línea 16. Espero sus respuestas, muchas gracias.

Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in C:\xampp\htdocs\ejercicios\ejercicio1.php on line 16


<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){

if(($_POST["edad"]) < 21){
echo $_POST["nom"].' y es menor de edad'; (Linea 16)
}
elseif (($_POST["edad"]) >= 21){
echo $_POST["nom"].' y es mayor de edad';
}
}
?>
  #7 (permalink)  
Antiguo 21/05/2011, 13:16
Avatar de xtimed  
Fecha de Ingreso: julio-2009
Ubicación: BCN - México
Mensajes: 226
Antigüedad: 14 años, 8 meses
Puntos: 41
Respuesta: Problema de "" y concatenacion

Copie tu codigo e ise la prueba y funciona correctamente, no veo por que te aparesca el error
Código PHP:
<?php if($_SERVER['REQUEST_METHOD'] == "GET"){ ?>
<form method="POST">
Edad
<input type="text" name="edad" />
<br />
Nombre
<input type="text" name="nom" />

<input type="submit"/>

</form>
<?php
}else if($_SERVER['REQUEST_METHOD']=="POST"){

    if((
$_POST["edad"]) < 21){
        echo 
$_POST["nom"] . ' y es menor de edad'//(Linea 16)
    
}
    elseif ((
$_POST["edad"]) >= 21){
        echo 
$_POST["nom"] . ' y es mayor de edad';
    }
}
?>
  #8 (permalink)  
Antiguo 21/05/2011, 16:06
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Problema de "" y concatenacion

El código está bien, sólo que no has cambiado el código como ya te indicaron varias veces..
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies

Etiquetas: Ninguno
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 01:34.