Foros del Web » Programando para Internet » PHP »

lanzar funcion desde <a href

Estas en el tema de lanzar funcion desde <a href en el foro de PHP en Foros del Web. Como puedo lanzar una función php desde un hipervinculo <a href tengo lo siguiente: <?php function inserta() { .... } ?> y dentro del BODY ...
  #1 (permalink)  
Antiguo 25/05/2004, 07:19
 
Fecha de Ingreso: noviembre-2003
Mensajes: 383
Antigüedad: 20 años, 4 meses
Puntos: 2
lanzar funcion desde <a href

Como puedo lanzar una función php desde un hipervinculo <a href

tengo lo siguiente:
<?php
function inserta()
{
....
}
?>

y dentro del BODY tengo:

<a href=...

Como puedo hacer para lanzar inserta()

Gracias.
  #2 (permalink)  
Antiguo 25/05/2004, 07:25
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola pellagofio:

Ya abierta la página, no te sirven las funciones php ...

Solo puedes manipular sus resultados con html/javscript...

Tal vez con un formulario ...


Saludos
  #3 (permalink)  
Antiguo 25/05/2004, 08:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En PHP tendrás que recargar la página o llamar a otra que haga dicho proceso ..

Si todo lo trabajas en un mismo script .. (el que procesa y lo que presentas está en un mismo .php ) .. Tendrás que tener una variabel de control que indique "que hacer" según un parámetro que tendras que enviarle a -si misma- (o a otra página) para que se entere tu código PHP que ha de llamar/procesar esa parte de tu código ..

Un ejemplo simple sería:

Código PHP:
<?

function insertar(){
// etc ...
}

// Proceso ...
if ($_GET['accion']=="borrar"){
insertar();
}
?>

<!-- resto de tu código HTMl/etc .. -->

<!-- Y tu link que va a llamar a esta misma página (PHP_SELF) con un parámetro "accion" que va a definir que hacer .. -->

<a href="<? echo $_SERVER['PHP_SELF'?>?accion=insertar">insertar</a>
Si tienes más "acciones" usa estructuras de control tipo switch() que te vendrán mejor para N casos de esa variable.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 26/05/2004, 07:16
 
Fecha de Ingreso: noviembre-2003
Mensajes: 383
Antigüedad: 20 años, 4 meses
Puntos: 2
Muchas gracias cluster funciona el enlace.

El problema que tengo ahora es que la pagina inserta.php recibe desde un formulario varios campos (titulo, cuerpo, fecha, imagen) y crea un formulario mostrando los datos de esos campos.

Al picar en el enlace:
<a href='".$_SERVER['PHP_SELF']."?accion=insertar'>

me debe cargar nuevamente la página y ejecutar la parte del:
if ($_GET["accion"]=="insertar")
{
include("../funciones.php");
$link=conectarse();
$cuerpo="<p>".str_replace("\n","<p>",$cuerpo);
$sql="insert into noticia (titulo,cuerpo,fecha,fuente,area,tipo,visitas,imag en) values ('$titulo','$cuerpo','$fecha','$fuente','$area','$ tipo',0,'$pathimag')";
$result=mysql_query($sql,$link);
}

El problema es que en la segunda carga de la página no tengo los campos definidos o por lo menos si le hago un echo $titulo no me da el valor.
  #5 (permalink)  
Antiguo 26/05/2004, 08:48
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues tendrás que propagar ese resto de datos por algún medio .. ya sea simplemente montando tus variabels en el URL

<a href='".$_SERVER['PHP_SELF']."?accion=insertar&aqui_otra_var=$valor&etc=$otrov ar'>

Si tienes tus variables en un formulario que estas "escribiendo" datos en el y al pulsar tu link "insertar" deseas insertar esos datos tendas que montar esas variables en el link pero con javascript .. algo tipo:

<a href='".$_SERVER['PHP_SELF']."?accion=insertar&otravar='+document.formulario.c ampo.value>
(confirmalo en el foro javascript si corresponde).

pero ... lo más sencillo es que tengas tu formulario y tu botón "insertar" .. de tipo "submit" .. así enviaras los datos del formulario a donde indiques en el "action" de ese formulario .. ahí recibiras tanto tus variables como el "insertar" definido para que lo filtres como requieras (por si tienes más "botones" tipo "actualizar" o incluso "borrar" ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 18:46.