Foros del Web » Programando para Internet » PHP »

Llamar a una funcion desde un link

Estas en el tema de Llamar a una funcion desde un link en el foro de PHP en Foros del Web. Buenas! He creado una función que introduce datos en una db MySQL para un programilla que estoy haciendo. El programa muestra los resultados de una ...
  #1 (permalink)  
Antiguo 14/03/2007, 05:24
 
Fecha de Ingreso: noviembre-2006
Mensajes: 146
Antigüedad: 17 años, 5 meses
Puntos: 1
Llamar a una funcion desde un link

Buenas!
He creado una función que introduce datos en una db MySQL para un programilla que estoy haciendo. El programa muestra los resultados de una tabla en función de unos criterios de búsqueda y la función lo que (se supone) hace es copiar algunos datos de los resultados seleccionados a otra tabla distinta. Lo que quería hacer es añadir un link que llame a la función en cada uno de los resultados de la búsqueda.

Código PHP:
function add($id$fecha) {
     
$ssql "insert into control (id, fecha) values ('$id', '$fecha')";
     
mysql_query($ssql,$link);

  #2 (permalink)  
Antiguo 14/03/2007, 05:33
Avatar de Pip
Pip
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 280
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Llamar a una funcion desde un link

Sé que se puede llamar a una función con javascript al pulsar un enlace mediante el evento onclick (busca sobre eso y encontrarás info) pero, claro, no sé si podrías llamar a una de php (no lo he probado). Personalmente, probaría a crear una función de javascript cuyo contenido fuera php. Aunque no sé si esto daría algún resultado.

Otra opción, si lo anterior no es posible, es algo que se me acaba de ocurrir y tampoco he probado. Si la búsqueda la realizas con el botón submit de un formulario (pongamos que dicho botón de llama "name=buscar") en la web donde muestras los resultados, puedes hacer:

Código PHP:
/* si se ha pulsado el botón buscar */
if (isset($_POST["buscar"]))
{
      
/* destruyo el valor del botón */
      
unset($_POST["buscar"]);
      
add($id,$fecha);

Aunque creo que eso no evita que si alguien refresca la web, se vuelva a llamar a la función add.
__________________
por Pip
  #3 (permalink)  
Antiguo 14/03/2007, 05:42
 
Fecha de Ingreso: noviembre-2006
Mensajes: 146
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: Llamar a una funcion desde un link

bufff.. java...
debe haber alguna manera más sencilla. He pensado hacer algo tipo "carrito de compra". He visto varios en PHP pero todos utilizan variables de sesión para almacenar los datos. Lo que yo quiero es hacer el típico link "add to cart" pero que meta los datos en la db MySQL. No se si me explico...
Gracias!
  #4 (permalink)  
Antiguo 14/03/2007, 05:59
Avatar de Pip
Pip
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 280
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Llamar a una funcion desde un link

No es Java, sino Javascript, aunque me imagino que lo sabías y quizás lo pusiste acortado.

De todas maneras lo he estado intentando y no se me ocurre como podría ser, porque una vez en Javascript, no sé si se puede ejecutar código php.

Espero que si alguien lee el post y lo sabe nos lo diga, podría ser interesante para otras personas.
__________________
por Pip
  #5 (permalink)  
Antiguo 14/03/2007, 08:04
Avatar de iskariote  
Fecha de Ingreso: marzo-2007
Mensajes: 39
Antigüedad: 17 años, 1 mes
Puntos: 1
Re: Llamar a una funcion desde un link

estimados:

php se ejecuta en el lado del servidor, entonces cuando llega el resultado a nuestro navegador, la unica forma de llamar a una funcion es por javascrip, que actua en la maquina cliente.

lo que si puedes hacer es hacer las llamadas a la funcion javascript, pasandoles los parametros en php

en tu caso, yo listaria los resultados de primera consulta en una tabla
la cual tendria un checkbox. el usuario elige los item a agregar y se lo pasas a un php (lo mismo que hace hotmail cuando te lista los correos y te da la opcion de eliminar: primero los marcas y despues le das a eliminar).

atte:

ISKARIOTE
  #6 (permalink)  
Antiguo 14/03/2007, 08:31
Avatar de seik!  
Fecha de Ingreso: mayo-2006
Mensajes: 492
Antigüedad: 17 años, 10 meses
Puntos: 6
De acuerdo Re: Llamar a una funcion desde un link

asi llamas a una funcion en javascript desde un LINK enviandole un valor de php...
Código PHP:
<a href="<?php print("javascript:eliminar('".$valorPHP."');");?>">LINK</a>
y asi lo recibes y trabajas....


Código PHP:
function eliminar(codigo){
            
            
alert('Usted esta solicitando eliminar un respaldo');
                if (
confirm('¿Desea eliminar el respaldo seleccionado?'))
                    {
                        
open("respaldo_el.php?codigo=" codigo"Eliminar""width=1,height=1,scrollbars=no,toolbars=no,status=no,left=0,top=0");
                        
                    }
            } 
cuando recibes en la funcion de javascript rescatamos el valor de php y lo enviamos con el open a una nueva pagina php... ahi realiza lo que quieras...

es una manera..

Saludos,
__________________
sEIK! -Chile-
Analista Programador.
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 17:16.