Foros del Web » Programando para Internet » PHP »

Ejecutar una función

Estas en el tema de Ejecutar una función en el foro de PHP en Foros del Web. Buen día, tengo una consulta. Deseo poder ejecutar una función php al hacer click en un enlace. No tengo idea de como hacerlo y si ...
  #1 (permalink)  
Antiguo 20/09/2007, 09:17
Avatar de pepejaguar  
Fecha de Ingreso: enero-2005
Ubicación: Guatemala
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 0
Ejecutar una función

Buen día, tengo una consulta.

Deseo poder ejecutar una función php al hacer click en un enlace. No tengo idea de como hacerlo y si es también posible o cual es la mejor manera de hacerlo.

La idea es algo así, aunque se que está equivocada

Código PHP:
<?php
function prueba()
{
...
}

echo 
"<a href='ejemplo.html'>Enlace</a>";

// ¿dónde hago la llamada para que se ejecute prueba()?
?>
Se me ocurre que pudiera estar algo asi

Código PHP:
<?php
function prueba()
{
...
}

echo 
"<a href='ejemplo.html'>Enlace".prueba()."</a>";
?>
Lo que hace la función es aumentar o reducir valores en la base de datos al hacer un click, por eso es necesario que ejecute la función mientras se carga el enlace que es externo.

Gracias por la ayuda.

Saludos.
  #2 (permalink)  
Antiguo 20/09/2007, 09:29
 
Fecha de Ingreso: agosto-2007
Ubicación: En el lugar menos pensado
Mensajes: 83
Antigüedad: 12 años, 6 meses
Puntos: 2
Re: Ejecutar una función

Hola

Bueno, pues te tocaria combinar javascript con php, es decir, en el onclick del enlace llamarias a una función javascript y dentro de la función javascript puedes ubicar codigo php para que se ejecute, y en cuanto a la manera de llamar a la función javascript seria asi:

Código PHP:
 echo "<a href='ejemplo.html' onclick='prueba()'>Enlace</a>"
o
Código PHP:
 echo "<a href='javascript:prueba()'>Enlace</a>"
espero eso sea a lo que te referias, saludos.
  #3 (permalink)  
Antiguo 20/09/2007, 09:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Ejecutar una función

No puedes hacer lo que quieres, debes de entender que PHP se procesa antes que el HTML, y la unica forma de hacerlo es asi:
Código PHP:
<?php
function prueba() {}

if( isset( 
$_GET['call'] ) && $_GET['call'] == 'prueba' ) {
    
prueba(); // Se llama a prueba
}

$here $_SERVER['PHP_SELF'];
echo 
"<a href=\"$here?call=prueba\">Enlace</a>";
?>
Saludos.
  #4 (permalink)  
Antiguo 20/09/2007, 10:16
Avatar de pepejaguar  
Fecha de Ingreso: enero-2005
Ubicación: Guatemala
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 0
Re: Ejecutar una función

Gracias amigos por la ayuda, ha sido muy útil.

GatorV, ya había creado un script de esa forma sin embargo quería hacerlo un poco mas simple, porque ese tipo de de enlaces no los indexan los buscadores, ya que al final el link quedaría algo así:

http://dominio.com/?call=http://www.google.com

Yo quiero que quede simplemente http://www.google.com por ejemplo, quitando la llamada anterior.

Gracias nuevamente.

Saludos.
  #5 (permalink)  
Antiguo 20/09/2007, 11:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Ejecutar una función

En ese caso podrias usar mod_rewrite para cambiar el URL y sea indexado, por decir:

http://dominio.com/call/http://www.google.com

O algo asi por el estilo, te recomiendo busques en el foro, hay varios ejemplos de mod_rewrite.

Saludos.
  #6 (permalink)  
Antiguo 20/09/2007, 20:01
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 14 años, 11 meses
Puntos: 17
Re: Ejecutar una función

Igualmente los buscadores de hoy en día no tienen tantos problemas indexando páginas con parámetros...
  #7 (permalink)  
Antiguo 20/09/2007, 20:50
Avatar de pepejaguar  
Fecha de Ingreso: enero-2005
Ubicación: Guatemala
Mensajes: 76
Antigüedad: 15 años, 1 mes
Puntos: 0
Re: Ejecutar una función

Cita:
Iniciado por Seppo Ver Mensaje
Igualmente los buscadores de hoy en día no tienen tantos problemas indexando páginas con parámetros...
Gracias, no estaba muy seguro de eso y no me quería arriesgar.

Cita:
Iniciado por GatorV Ver Mensaje
En ese caso podrias usar mod_rewrite para cambiar el URL y sea indexado, por decir:

http://dominio.com/call/http://www.google.com

O algo asi por el estilo, te recomiendo busques en el foro, hay varios ejemplos de mod_rewrite.
Me podrías sugerir algún buen tutorial de mod_rewrite, porque lo que está en el foro ya lo he probado todo y no me ha funcionado nunca, seguro estoy haciendo algo mal y por eso quisiera un buen tutorial. Gracias.
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 14:21.