Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2008
SMTZ SMTZ is offline
Miembro
 
Registrado: nov 2003
Posts: 225
Poder: 21
SMTZ Va por buen camino
Escribir al clicar en un botón

Hola, estoy en mis inicios con PHP y he intentado hacer un ejemplo básico que ha de escribir una palabra al darle a un botón, pero no me ha salido. El código es el siguiente:

Código:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<title>Untitled Document</title>
</head>

<body>
 
 
<?php

function escribe () {

   $mensaje="prueba";
   return $mensaje;
      
} 

?> 

<html>

<form id="form7" name="form7" method="post" action="<?php escribe()?>">
    <div align="center">
      <input name="RegitrarmeSubmit" type="submit" class="style2" id="RegitrarmeSubmit" value="Registrarme" />
    </div>
  </form>
  
 </body>

</html>

He estado buscando información por google y he encontrado ejemplos de llamadas a funciones, pero no sé qué hago mal. Adjunto algunas de esas páginas para quien le interese, ya que veo que no soy el único novato del foro:

http://blonk.com.ar/2005/08/21/formulario-en-php/
http://www.desarrolloweb.com/articulos/312.php
http://www.ignside.net/man/php/functions.php
http://www.ignside.net/man/php/include.php
http://www.pixelartweb.com.ar/programacion.htm


Un saludo.
Responder Con Cita
  #2  
Antiguo 27-06-2008
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Tienes que tener en cuenta que PHP se ejecuta en el servidor, no en el cliente (navegador). Esto quiere decir, entre otras cosas, que no puedes invocar desde el cliente a una función de PHP, que habría de ejecutarse en el servidor. No puedes hacerlo, al menos, directamente. De manera que habría que ver qué quieres hacer, exactamente, pero, partiendo de la base de que no puedes usar PHP en el cliente, tal como lo estás tratando de hacer.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 27-06-2008
SMTZ SMTZ is offline
Miembro
 
Registrado: nov 2003
Posts: 225
Poder: 21
SMTZ Va por buen camino
Post Lo que intentaba

Hola, estoy acostumbrado a programar en Delphi e intentaba simular el evento onclick cuando le das a un botón, de hecho, lo que quería hacer es el típico formulario de registro de un usuario, es decir, le pides el correo, apodo, contraseña, etc. y si hay algún campo mal rellenado le saldrá un mensaje con el error, por ejemplo, te falta la arroba en campo email.

Había hecho un ejemplillo tonto, pero no me ha funcionado:

Código:
<?php

function comprueba_arroba($correo) {

   $posicion = strpos ( $correo, "@" );
   if ( $posicion = 0 )
   {
   
      return ( "La dirección de correo no está bien escrita" );
   
   } // if 
      
} // comprueba_arroba

?>
Me he comprado un libro de php y estaba trasteando, pero por el momento no ando bien.

Gracias por la ayuda.
Responder Con Cita
  #4  
Antiguo 27-06-2008
SMTZ SMTZ is offline
Miembro
 
Registrado: nov 2003
Posts: 225
Poder: 21
SMTZ Va por buen camino
Post Más

Por cierto, si en vez de llamar a la función desde la acción del botón hago

Código:
<?php echo escribe(); ?>
sí que escribre la palabra.


Un saludo.
Responder Con Cita
  #5  
Antiguo 27-06-2008
SMTZ SMTZ is offline
Miembro
 
Registrado: nov 2003
Posts: 225
Poder: 21
SMTZ Va por buen camino
Solucionado

Hola, ya lo he conseguido. El resultado se ha de mostrar invocando otra página php capaz de coger el valor de la función. Ya voy entendiendo los conceptos después de estar quemándome la vista durante un rato.

Un saludo y gracias.
Responder Con Cita
  #6  
Antiguo 27-06-2008
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Por cierto, si en vez de llamar a la función desde la acción del botón hago
Pues es bien raro. Tal como yo lo veo, vaya. Todavía si fuera código JavaScript... esto es lo que suele usarse para trabajar en el cliente, por ejemplo, validando datos de los formularios previo a su envío al servidor, donde habrá también que validarlos. Pero, hablamos entonces de código JavaScript, no de PHP. Pero, bueno, en cualquier caso, parece que ya has cogido la onda.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 28-06-2008
SMTZ SMTZ is offline
Miembro
 
Registrado: nov 2003
Posts: 225
Poder: 21
SMTZ Va por buen camino
Post Lo qye he hecho

Sí, mira, lo que he hecho ha sido llamar a una página php desde el botón:

Código:
<tr>
        <form id="QuieroRegistrarmeForm" name="QuieroRegistrarmeForm" method="post" action="reg_err.php">
        <td width="128">Correo electr&oacute;nico: </td>
        <td width="394">
             <input name="emailtextfield" type="text" id="emailtextfield" size="58" maxlength="100"/>
        </td>
      </tr>
Luego, en la página reg_err.php:

Código:
$correo = $_POST['emailtextfield'];
 
if (comprueba_arroba( $correo ) == 0 || 
    comprueba_espacio ($correo) == true
   ) {
	
   echo "La dirección de correo electronico '$correo' no esta bien escrita. Compruebe que exista el simbolo '@' y no hayan espacios en blanco.";
	
} else {
	
   echo "ok";

}
También podría haber llamado a la página principal y llamar a la función pasándole como parámetro la variable $_POST['emailtextfield'], igual que en la página a la que llamo, para que me saliera el mensaje de error en la propia página y no en una nueva.

Me está costando un poco cambiar la perspectiva de progamación, pero eso es sólo práctica. Me está gustando php por el momento. Lo único que le hecho en falta es una parte visual para añadir el diseño de la página, aunque con Dreamweaver me voy apañando. Tengo que ir retocando las secciones <form></form> pero bueno.

Muchas gracias por todo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
escribir en un edit principiante22 Varios 2 18-07-2007 02:31:39
Escribir DBLookupComboBox Spynosa Varios 2 04-07-2007 02:23:26
¿Por que no me dejan escribir? chrids506 Varios 1 19-04-2006 19:12:39
Escribir geovany API de Windows 2 23-12-2004 19:40:08
Escribir un help lfidanza Varios 9 17-06-2004 04:04:41


La franja horaria es GMT +2. Ahora son las 21:04:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi