elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  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 5,207 veces)
lpnu

Desconectado Desconectado

Mensajes: 15



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

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
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



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

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
  1. 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
  1. <?php
  2.  
  3. function contraseña($contra1,$contra2){
  4.  if($contra1 <> $contra2){
  5.      // usa return en vez de echo. Asi te evitas mostrar el resultado antes del retorno.
  6.      return 'contraseña no coincide.';
  7.  } else {
  8.      return 'contraseña coincide.';
  9.  }
  10. }
  11.  
  12. // Comprobamos si el usuario ha introducido la contraseña, comprobando
  13. // si los valor1 y valor2 estan definidos.
  14.  
  15. if(isset($_GET['valor1']) && isset($_GET['valor2'])) {
  16.  // ejecutamos la funcion contraseña.
  17.   echo contraseña($_GET['valor1'],$_GET['valor2']);
  18. } else {
  19.  // en caso de que no esten definidos (valor1,valor2) mostramos mensaje de error)
  20.   echo 'No has introducido tu contraseña';
  21. }
  22. ?>

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
  1. <html>
  2. <head>
  3. <title>Problema</title>
  4. </head>
  5. <body>
  6. <form method="get" action="#">
  7. Ingrese su nombre:
  8. <input type="text" name="nombre">
  9. Ingrese su contraseña:
  10. <input type="text" name="valor1">
  11. Repita su contraseña:
  12. <input type="text" name="valor2">
  13.  
  14. <input type="submit" value="confirmar">
  15. </form>
  16.  
  17. <?php
  18.  
  19. function contraseña($contra1,$contra2){
  20.  if($contra1 <> $contra2){
  21.      // usa return en vez de echo. Asi te evitas mostrar el resultado antes del retorno.
  22.      return 'contraseña no coincide.';
  23.  } else {
  24.      return 'contraseña coincide.';
  25.  }
  26. }
  27.  
  28. // Comprobamos si el usuario ha introducido la contraseña, comprobando
  29. // si los valor1 y valor2 estan definidos.
  30.  
  31. if(isset($_GET['valor1']) && isset($_GET['valor2'])) {
  32.  // ejecutamos la funcion contraseña.
  33.   echo contraseña($_GET['valor1'],$_GET['valor2']);
  34. } else {
  35.  // en caso de que no esten definidos (valor1,valor2) mostramos mensaje de error)
  36.   echo 'No has introducido tu contraseña.';
  37. }
  38. ?>
  39. </body>
  40. </html>
  41.  


Espero que te sirva.

Saludos


En línea

lpnu

Desconectado Desconectado

Mensajes: 15



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

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
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



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

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
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <form action="#" method="POST">
  6. <input type="text" name="valor1" />
  7. <input type="submit" name="botonenvio" value="Enviar" />
  8. </form>
  9.  
  10. <?php
  11.  
  12. if(isset($_POST['botonenvio'])){
  13.  
  14.   echo 'Has hecho click sobre el boton enviar!';
  15.  
  16. } else {
  17.  
  18.   echo 'No has pulsado el boton enviar';
  19.  
  20. }
  21.  
  22. ?>
  23. </body>
  24. </html>
  25.  

Saludos
En línea

lpnu

Desconectado Desconectado

Mensajes: 15



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

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: 978


« Anterior | Próximo »


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

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:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Formularios y cajas de texto ayuda... plz
Programación Visual Basic
visualfree 9 3,225 Último mensaje 28 Octubre 2006, 02:50 am
por visualfree
Ayuda con Arrays PHP, Formularios y MySQL
PHP
oscarj24 1 3,121 Último mensaje 26 Octubre 2009, 23:54 pm
por дٳŦ٭
AYUDA - Reutilizar formularios !
Programación General
uv3 0 2,230 Último mensaje 30 Mayo 2010, 00:22 am
por uv3
Ayuda php sobre formularios
PHP
Senior++ 3 1,867 Último mensaje 2 Diciembre 2013, 17:04 pm
por basickdagger
Subir una foto al servidor. Modificación de esta y envio de 2 formularios.
PHP
Phantasy 4 1,959 Último mensaje 4 Diciembre 2013, 17:44 pm
por Phantasy
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines