elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 13:04  


Tema destacado: [AIO elhacker.NET] Compilación herramientas análisis y desinfección malware

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Ayuda en PHP, envio de formularios , funciones
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda en PHP, envio de formularios , funciones  (Leído 566 veces)
lpnu

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Ayuda en PHP, envio de formularios , funciones
« en: 10 Enero 2012, 22:49 »

Hola muchachos, vengo leyendo y estudiando php de tutoriales, pese a los calores y al poder  aprovechar mi tiempo libre en otras cosas, pero decidi invertir mi tiempo en aprender este lenguaje, pero me encontrè con un ejercicio , desde la mañana que no puedo resolverlo y necesitaria de su ayuda,


El enunciado me pide esto ,Confeccionar un formulario que solicite la carga del nombre de usuario y su clave en dos oportunidades. En la página que se procesan los datos del formulario implementar una función que imprima un mensaje si las dos claves ingresadas son distintas.


 y yo tengo 2 paginas, la que seria mi html pagina1 , y mi pagina2.php, en la la 1 tengo esto

<html>
<head>
<title>Problema</title>
</head>
<body>
<form method="post" action="pagina2.php">
Ingrese su nombre:
<input type="text" name="nombre">
Ingrese su contraseña:
<input type="text" name="valor1">
Repita su contraseña:
<input type="text" name="valor2">

<input type="submit" value="confirmar">


<?php

?>
</body>
</html>


y mi pagina 2 , que recibiria el formulario ,, esto :

<html>
<head>
<title>Problema</title>
</head>
<body>

<?php
function contraseña ($contra1 $contra2 )
  {
  if ($contra1 <> $contra2)
   echo "La contraseñas son diferentes" ;
  }

$uno=$_post[valor1];
$dos=$_post[valor2];


// Ovbiamente, sè que no està bien , esto que hice, pero sè qe desde html no puedo llamar una funcion, mi duda, es què poner en mi pagina 1, (que poner en el lenguaje php,) o como manejarlo, con un boolean, if contraseña(v1,v2) ) = true, o algo asi, para poder sacar el resultado, cualqier cosa qe me ayuden, me va a servir, muchachos gracias.


En línea
drvy | BSM


Desconectado Desconectado

Mensajes: 1.129


badstupidmonkey


Ver Perfil WWW
Re: Ayuda en PHP, envio de formularios , funciones
« Respuesta #1 en: 10 Enero 2012, 23:14 »

Hola,

Puesto que el formulario, envía los datos a pagina2.php, esta es la pagina, en la que tendrás que trabajar con php. y no en la pagina 1 que es la html.

Si quieres que todo ocurra en la misma pagina, cambia el action de tu formulario por " # " (action="#").

Tu código esta mas o menos bien, te han faltado las comas declarando la función,
Código
function contraseña($contra1,$contra2){

Para llamar una función simplemente escribe el nombre de la función, y si es necesario, un echo delante.

Ejemplo 1;


-> En la pagina1.html, tenemos el formulario y los datos se envían a pagina2.php.

pagina2.php contendría lo siguente:
Código
<?php
 
function contraseña($contra1,$contra2){
 if($contra1 <> $contra2){
     // usa return en vez de echo. Asi te evitas mostrar el resultado antes del retorno.
     return 'contraseña no coincide.';
 } else {
     return 'contraseña coincide.';
 }
}
 
// Comprobamos si el usuario ha introducido la contraseña, comprobando
// si los valor1 y valor2 estan definidos.
 
if(isset($_GET['valor1']) && isset($_GET['valor2'])) {
 // ejecutamos la funcion contraseña.
  echo contraseña($_GET['valor1'],$_GET['valor2']);
} else {
 // en caso de que no esten definidos (valor1,valor2) mostramos mensaje de error)
  echo 'No has introducido tu contraseña';
}
?>

Ejemplo 2;

-> Aquí vamos a hacer todo desde un archivo. Por tanto solo nos hara falta un archivo que termine en .php. Por ejemplo  pagina.php.

Código
<html>
<head>
<title>Problema</title>
</head>
<body>
<form method="get" action="#">
Ingrese su nombre:
<input type="text" name="nombre">
Ingrese su contraseña:
<input type="text" name="valor1">
Repita su contraseña:
<input type="text" name="valor2">
 
<input type="submit" value="confirmar">
</form>
 
<?php
 
function contraseña($contra1,$contra2){
 if($contra1 <> $contra2){
     // usa return en vez de echo. Asi te evitas mostrar el resultado antes del retorno.
     return 'contraseña no coincide.';
 } else {
     return 'contraseña coincide.';
 }
}
 
// Comprobamos si el usuario ha introducido la contraseña, comprobando
// si los valor1 y valor2 estan definidos.
 
if(isset($_GET['valor1']) && isset($_GET['valor2'])) {
 // ejecutamos la funcion contraseña.
  echo contraseña($_GET['valor1'],$_GET['valor2']);
} else {
 // en caso de que no esten definidos (valor1,valor2) mostramos mensaje de error)
  echo 'No has introducido tu contraseña.';
}
?>
</body>
</html>
 


Espero que te sirva.

Saludos


En línea
lpnu

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda en PHP, envio de formularios , funciones
« Respuesta #2 en: 10 Enero 2012, 23:20 »

drvy | BSM , La verdad que te agradezco un monton, el tiempo que tomaste y lo claro que me explicaste todo, con gente asi como vos, me dan ganas de seguir estudiando y aprendiendo cada vez màs, gracias en serio!! y una ultima consulta/duda, que tengo, en el momento que pongo action=# , existe la posibilidad, que apartir del boton, submit, pueda emplear alguna funcion ? apartir del click, hacer algo ? ,
En línea
drvy | BSM


Desconectado Desconectado

Mensajes: 1.129


badstupidmonkey


Ver Perfil WWW
Re: Ayuda en PHP, envio de formularios , funciones
« Respuesta #3 en: 10 Enero 2012, 23:30 »

Hola,

No se si te he entendido muy bien. Si te refieres a poder determinar cuando el usuario ha hecho click en el buton submit, es muy facil!. Simplemente ponle un nombre y procesalo!.

Ejemplo

Código
<html>
<head>
</head>
<body>
<form action="#" method="POST">
<input type="text" name="valor1" />
<input type="submit" name="botonenvio" value="Enviar" /></form>
 
<?php
 
if(isset($_POST['botonenvio'])){
 
  echo 'Has hecho click sobre el boton enviar!';
 
} else {
 
  echo 'No has pulsado el boton enviar';
 
}
 
?>
</body>
</html>
 

Saludos
En línea
lpnu

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda en PHP, envio de formularios , funciones
« Respuesta #4 en: 10 Enero 2012, 23:39 »

aaah , listo aclarado todo entonces, de nuevo muchas gracias, como puedo dejar en claro, que ya encontramos la solucion , para poder sacar el tema, del foro y no ocupar espacio en vano!
En línea
cassiani


Desconectado Desconectado

Mensajes: 946


« Anterior | Próximo »


Ver Perfil WWW
Re: Ayuda en PHP, envio de formularios , funciones
« Respuesta #5 en: 11 Enero 2012, 19:08 »

seguirá apareciendo no te preocupes por eso, si lo deseas, editas el primer post del tema y colocas [solucionado] antes del texto del asunto y ya está.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines