Foros del Web » Programando para Internet » PHP »

[ERROR PHP] Con un if/else en un formulario

Estas en el tema de [ERROR PHP] Con un if/else en un formulario en el foro de PHP en Foros del Web. Buenas, estoy haciendo una especie de practica, lo digo porque se notara que soy muy nobato xD El primer documento es un formulario usuario/contraseña basicamente ...
  #1 (permalink)  
Antiguo 13/05/2011, 08:27
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
[ERROR PHP] Con un if/else en un formulario

Buenas, estoy haciendo una especie de practica, lo digo porque se notara que soy muy nobato xD

El primer documento es un formulario usuario/contraseña basicamente lo que quiero hacer en el if de la otra pagina es.. if usuario = admin & contra =123 No hagas nada. Si lo anterior es incorrecto. llevame a la pagina index.html.

Aki dejo los dos codigos por si me podrian ayudar con el error.


Este es el formulario que esta en la pagina para logearme:

<table border=0 bordercolor=black align=center background=f2.png>
<tr><td><p>Dades personals:</p></tr></td>
<form name="formulario" method="POST" action="formulario3.php">
<tr><td> Usuari: <input name="Usuari" type="Usuari" id="Usuari"><br> </tr></td>
<tr><td>Contrasenya: <input name="Contrasenya" type="Contrasenya" id="Contrasenya"><br></tr></td>

<input type="submit" name="" value="Enviar">
</td>
</tr></td>

</table>

-----------------------------------------

Esta es la otra pagina que quiero que haga lo que dije anteriormente. Que me deje en ella, o me lleve a index.html si esta incorrecto el usuario/passwor (admin /123)

<?php
foreach ($_POST as $indice => $valor) {
echo "$indice: $valor<br>";
}

$servidor = "localhost";

If ($_Post('Usuari') == 'Admin' & $_Post('Contrasenya') == '123');
{
Echo Has entrado correctamente!;
}
else ($_Post('Usuari') != 'Admin' & $_Post('Contrasenya') != '123');
{
echo "<a href='index.html'></a>";
};
?>
  #2 (permalink)  
Antiguo 13/05/2011, 08:32
Avatar de Sotelio  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago de Chile
Mensajes: 68
Antigüedad: 13 años
Puntos: 21
Respuesta: [ERROR PHP] Con un if/else en un formulario

Hola,

Basta con el primer if. En el ELSE no es necesario que haya condición:

Código PHP:
Ver original
  1. if ($_POST('Usuari') == 'Admin' & $_POST('Contrasenya') == '123');
  2. {
  3. echo "Has entrado correctamente!";
  4. }
  5. else
  6. {
  7. echo "<a href='index.html'></a>";
  8. };

La redirección la puedes hacer con javascript:

Código PHP:
Ver original
  1. if ($_POST('Usuari') == 'Admin' & $_POST('Contrasenya') == '123');
  2. {
  3. echo "Has entrado correctamente!";
  4. }
  5. else
  6. {
  7. ?>
  8. <script>document.location='index.html';</script>
  9. <?php
  10. };

Y como recomendación, te recomiendo que uses minúsculas para los nombres de variables.

Suerte
Sotelio
  #3 (permalink)  
Antiguo 13/05/2011, 08:33
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: [ERROR PHP] Con un if/else en un formulario

Tienes pésimos fundamentos del lenguaje, usas sintaxis no existente.

Así que pregunto, ¿que tanto sabes de PHP básico?

De verdad, te invito a consultar el manual general de PHP, sobre todo por la sintaxis.

Cuando aprendas a expresarte con propiedad en el lenguaje vuelve, seguro alguien te echa la mano.

Edito: lo digo para que pongan atención, ya que eso de hacer el trabajo de los demás solo hace una copiadera de código mal escrito...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 13/05/2011, 08:41
Avatar de silvanha  
Fecha de Ingreso: marzo-2006
Ubicación: En mi mundo de sueños
Mensajes: 653
Antigüedad: 18 años, 1 mes
Puntos: 65
Respuesta: [ERROR PHP] Con un if/else en un formulario

Primero, no dices cuales son los errores o error que te marca.. podrías explicarnos que no funciona?

Segundo, veo unos errorcillos de código a simple vista, si quieres que el campo de pass, sea de ese tipo y aparezcan un par de asteriscos, entonces necesitas poner type="password", y en el campo de nombre de usuario type="text"...

Por otro lado, si quieres preguntar en el IF, que se cumplan ambas condiciones usa doble ampersan &&

Checa eso y nos dices :)

saludos ;)
__________________
●•· No hay nada imposible..
●•· Vico-X.. ;)
  #5 (permalink)  
Antiguo 13/05/2011, 08:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: [ERROR PHP] Con un if/else en un formulario

Añado a lo que dice silvanha:
Código PHP:
// MAL
$_POST('Usuari')

// BIEN
$_POST['Usuari'
Hay una gran diferencia entre usar paréntesis y corchetes: errores...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 13/05/2011, 10:21
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Respuesta: [ERROR PHP] Con un if/else en un formulario

<?php
foreach ($_POST as $indice => $valor) {
echo "$indice: $valor<br>";
}

$servidor = "localhost";

If ($_POST['Usuari'] == 'Admin' & $_POST['Contrasenya'] == '123');
{
echo Has entrado correctamente!;
}
else ($_POST['Usuari'] != 'Admin' & $_POST['Contrasenya'] != '123');
{
echo "<a href='index.html'></a>";
}
?>



Una vez modificado el problema ese, Cual puede ser el problema principal el error dice:

Parse error: syntax error, unexpected T_STRING excepting ',' or ';'
  #7 (permalink)  
Antiguo 13/05/2011, 10:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: [ERROR PHP] Con un if/else en un formulario

Pues te faltan correcciones, debes usar && en lugar de un solo & y además estás colocando un punto-y-coma al final de los paréntesis de tus condiciones.

También debes saber que las cadenas de texto van entre comillas:
Código PHP:
// MAL
echo Has entrado correctamente!;

// BIEN
echo 'Has entrado correctamente!'
¿Sabes algo de programación general?

Deberías leer algo...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 13/05/2011, 10:38
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Respuesta: [ERROR PHP] Con un if/else en un formulario

<?php
foreach ($_POST as $indice => $valor) {
echo "$indice: $valor<br>";
}

$servidor = "localhost";

If ($_POST['Usuari'] == 'Admin' && $_POST['Contrasenya'] == '123')
{
echo 'Has entrado correctamente!';
}
else ($_POST['Usuari'] != 'Admin' && $_POST['Contrasenya'] != '123')
{ // aqui me da syntax error unexpected.... '{'
echo "<a href='index.html'></a>";
}

alguna ultima idea? :l
Espero que arreglando ese error funcione ya..


Y sobre la pregunta, se nota bastante que no se mucho (poco tirando a menos). Pero es una pequeña cosa que tengo que hacer :S
  #9 (permalink)  
Antiguo 13/05/2011, 10:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: [ERROR PHP] Con un if/else en un formulario


Código PHP:
// MAL
else (/* algo */)

// BIEN
elseif (/* algo */
Y de verdad, no pierdas el tiempo en el foro, si es tu obligación hacer dicho script pon algo de tu parte y estudia el lenguaje primero. Aprender a base de prueba y error no solo te quita tiempo a ti, también es una perdida de tiempo para quienes ayudan en el foro.

Debes entender que nadie te va a llevar de la mano, paso por paso, y eso quita tiempo.

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 13/05/2011, 17:31
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años
Puntos: 322
Respuesta: [ERROR PHP] Con un if/else en un formulario

Dios, tienes error tras error
Te recomiendo que antes de hacer un código, y sobre todo; antes de preguntar!: Leer y estudiar
__________________
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: 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 08:40.