Foros del Web » Programando para Internet » PHP »

Llamar a un función desde un hipervinculo

Estas en el tema de Llamar a un función desde un hipervinculo en el foro de PHP en Foros del Web. Hola!.. estoy aprendiendo php y he creado una base de datos en mysql. Ahora lo que estoy intentando hacer es un abm para dicha base ...
  #1 (permalink)  
Antiguo 07/06/2012, 08:49
 
Fecha de Ingreso: octubre-2010
Mensajes: 32
Antigüedad: 11 años, 9 meses
Puntos: 0
Llamar a un función desde un hipervinculo

Hola!.. estoy aprendiendo php y he creado una base de datos en mysql. Ahora lo que estoy intentando hacer es un abm para dicha base de datos.
He separado los archivos por lo cual tengo un archivo funciones.php en el que se encuentran las funciones de insert, delete, etc. Lo que quiero hacer es llamar a la funcion insert (por ejemplo) desde un <a href=....> lo he intentado pero no funciona, no salta ningún error sino que directamente no anda.

Cualquier información que me puedan dar al respecto se los agradezco.
  #2 (permalink)  
Antiguo 07/06/2012, 08:52
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 2 meses
Puntos: 2534
Respuesta: Llamar a un función desde un hipervinculo

Muestra como lo haces.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 07/06/2012, 09:00
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 11 años, 1 mes
Puntos: 261
Respuesta: Llamar a un función desde un hipervinculo

Puedes usar, por ejemplo, una variable en la url tipo
Código:
www.midominio.com?variable=valor
Después solo tienes que comprobar con un if
Código PHP:
if ( $_GET['variable'] == 'valor' )
{
    
//... llamar a la función que necesites

O un switch

Código PHP:
switch ($_GET['variable']) 
{
    case 
'insert':
        
// .. lamas a la función insert
        
break;
    case 
'delete':
        
// .. lamas a la función delete
        
break;
    
//...

__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #4 (permalink)  
Antiguo 07/06/2012, 09:25
 
Fecha de Ingreso: octubre-2010
Mensajes: 32
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Llamar a un función desde un hipervinculo

Gracias por responder!! muestro el código para que me puedan ayudar un poquito más ;)

$TITULOSECCION="Administrador de Destinos";


$sql3="SELECT * FROM destinos order by nombre";
$resultado= mysql_query($sql3, $conn);

$CONTENIDO="<table>";
$CONTENIDO.= "<TR><TH>IdDestino</TH><TH>Destino</TH><TH>Acciones</TH></TR>";

while ($row=mysql_fetch_array($resultado))

{

$CONTENIDO.= "<TR><TD>".$row["IDDESTINOS"]."</TD><TD><input type=text name=NOMBRE value='".$row["NOMBRE"]."'></td><TD><input type=submit value='Grabar'> <a href='./index.php?IDSECCION=2&IDDESTINOS=".$row["IDDESTINOS"]."'>editar opciones</a> <a href=<a href='./index.php?IDSECCION=$IDSECCION&ACCION=BorrarDestin o&IDDESTINO=".$row["IDDESTINOS"]."'>Borrar</a></td></TR>";

}

$CONTENIDO.= "<TR><TD>Nuevo</TD><TD><input type=text name=NOMBRE value=''></td><TD><a href= a href='./index.php?IDSECCION=$IDSECCION&ACCION=GrabarDestin o&NOMBRE=".$row["NOMBRE"]."'>Grabar</td></TR>";

$CONTENIDO.="</table>";
  #5 (permalink)  
Antiguo 07/06/2012, 09:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 2 meses
Puntos: 2534
Respuesta: Llamar a un función desde un hipervinculo

¿Y que es lo que no funciona?

Explica por favor que debería hacer tu código y que no hace.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 07/06/2012, 09:35
 
Fecha de Ingreso: octubre-2010
Mensajes: 32
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Llamar a un función desde un hipervinculo

Lo que quiero hacer es llamar a la funcion insert (por ejemplo) desde un <a href=....> lo he intentado pero no funciona, no salta ningún error sino que directamente no anda.

En el código:
a href= a href='./index.php?IDSECCION=$IDSECCION&ACCION=GrabarDestin o&NOMBRE=".$row["NOMBRE"]."'>Grabar</td></TR>";

la funcion GrabarDestinos es

function GrabarDestino(){
global $conn;
$NOMBRE=$_REQUEST['NOMBRE'];
$sql="INSERT INTO destinos (NOMBRE)
VALUES ('$NOMBRE')";
mysql_query($sql, $conn);


Gracias!
  #7 (permalink)  
Antiguo 07/06/2012, 09:44
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 2 meses
Puntos: 2534
Respuesta: Llamar a un función desde un hipervinculo

Ya te dieron un ejemplo antes, las funciones no se llaman solas, tu eres el que debe saber invocarlas.

Código PHP:
if ($_GET['ACCION'] == 'GrabarDestino') {
  
GrabarDestino(); // ...

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 07/06/2012, 09:59
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 10 años, 2 meses
Puntos: 97
Respuesta: Llamar a un función desde un hipervinculo

piensa que antes de aplicar cualquiera de las opciones que te han dado, tienes que hacer un include "funciones.php";

Saludos.
  #9 (permalink)  
Antiguo 07/06/2012, 11:26
 
Fecha de Ingreso: octubre-2010
Mensajes: 32
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Llamar a un función desde un hipervinculo

Gracias por las respuestas.. tengo un archivo que se llama acciones.php en el cual tengo el código
<?php
$ACCION=$_REQUEST['ACCION'];
if($ACCION)eval($ACCION);
?>

en ese caso podría hacer lo que estoy haciendo?
  #10 (permalink)  
Antiguo 07/06/2012, 11:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 2 meses
Puntos: 2534
Respuesta: Llamar a un función desde un hipervinculo

Cita:
Iniciado por anidivi Ver Mensaje
Gracias por las respuestas.. tengo un archivo que se llama acciones.php en el cual tengo el código
<?php
$ACCION=$_REQUEST['ACCION'];
if($ACCION)eval($ACCION);
?>

en ese caso podría hacer lo que estoy haciendo?
¿Probaste el código o esperas que deduzcamos algo?

Aunque a simple vista, y deberías saber, eval() es una función maligna por ende no deberías usarla a la ligera.

Revisa por favor los ejemplos que te hemos colocado.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 07/06/2012, 11:43
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 10 años, 2 meses
Puntos: 97
Respuesta: Llamar a un función desde un hipervinculo

Aunque soy un defensor de EVAL pateketrueke lleva razón en su observación en este caso concreto, ya que vas a ejecutar un código que te envian desde el navegador..y te pueden hacer lo que quieran.
Siempre que uses EVAL, que sea con datos que NUNCA vengan del navegador!


plantéate mejor una estructura tipo
Código PHP:
    switch ($accion) {
    case 
"gravar":
        
gravar();
        break;
    case 
"eliminar":
        
eliminar();
        break;
    case 
"lo que sea":
        
loquesea();
        break;
    } 
...y respondiendo a literalmente a tu pregunta, hacerlo, si puedes. Y además, también te digo que hagas pruebas...

saludos.
  #12 (permalink)  
Antiguo 07/06/2012, 11:50
 
Fecha de Ingreso: octubre-2010
Mensajes: 32
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Llamar a un función desde un hipervinculo

por supuesto que lo estoy probando.. pero no logro hacer que funcione de ninguna manera y con respecto al "deberías saber.." no lo sabía porque recientemente estoy aprendiendo php.

Muchas Gracias por los aportes y seguiré investigando y probando, de eso se trata programar, no?
  #13 (permalink)  
Antiguo 07/06/2012, 11:54
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 10 años, 2 meses
Puntos: 97
Respuesta: Llamar a un función desde un hipervinculo

si te atascas mucho, postea tu código y lo revisamos.

Saludos.
  #14 (permalink)  
Antiguo 17/04/2013, 07:55
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 9 años, 6 meses
Puntos: 2
Respuesta: Llamar a un función desde un hipervinculo

Hola a todos me parece muy interesante este tema ya que el codigo se vuelve mas practico, yo tambien estoy aprendiendo y me pregunto si se puede enviar la accion pero mediante un submit ? o un boton guardar y como seria? gracias de antemano

Etiquetas: hipervinculo, mysql
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 21:41.