Foros del Web » Programando para Internet » PHP »

Enlaces a funciones ?

Estas en el tema de Enlaces a funciones ? en el foro de PHP en Foros del Web. Hola. LLevo programando con PHP escasamente 1 semana, vengo de Java y c#. He creado una pequeña aplicación de gestión de telefonos (original eh ?)para ...
  #1 (permalink)  
Antiguo 13/12/2011, 12:03
 
Fecha de Ingreso: septiembre-2010
Mensajes: 10
Antigüedad: 13 años, 7 meses
Puntos: 0
Enlaces a funciones ?

Hola.
LLevo programando con PHP escasamente 1 semana, vengo de Java y c#.

He creado una pequeña aplicación de gestión de telefonos (original eh ?)para apreder.

La cuestión que quiero sabes es si se puede hacer un enlace a una función o siempre debo hacer enlaces a archivos php pasando opciones mediante GET o POST ?


Por ejemplo, para des loguearte tengo uno archivo php como el código:
Código:
<?php
 session_start();

 unset($_SESSION["usuario"]);
 unset($_SESSION["loging"]);

 
 header("Location:index.php")	
?>
y lo invoco con <a href="salir.php" etc.

Me pregunto si puedo llamar mediante un enlace a una función que haga justamente eso. (ejemplo: <a href="mis-funciones.php:salir")
  #2 (permalink)  
Antiguo 13/12/2011, 12:07
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1.242
Antigüedad: 13 años, 5 meses
Puntos: 73
Respuesta: Enlaces a funciones ?

No entendí bien tu pregunta, pero... creo que lo que necesitas es javascript

Quizás quieras meter eso en una funcion, puedes hacerlo así:

Código PHP:
Ver original
  1. function logout(){
  2.  
  3.  unset($_SESSION["usuario"]);
  4.  unset($_SESSION["loging"]);
  5.  
  6.  
  7.  header("Location:index.php")
  8. }

invocandola donde quieras simplemente con logout();

PHP es muy sencillo, los phperos lo tenemos todo preprogramado..

Suerte!
__________________
:)
  #3 (permalink)  
Antiguo 13/12/2011, 12:08
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Enlaces a funciones ?

me parece que tu problema es que en realidad estás migrando de aplicativos de escritorio hacia aplicativos WEB.

verás, los conceptos son un poco diferentes en una aplicación cliente servidor en donde PHP juega el papel del servidor, al igual que en ASP.net cuando colocas scripts con el atributo runat="server" lo que le indica al mismo que dicho script debe ejecutarse en el servidor ¿o me equivoco?

básicamente pasas casi todo por enlaces (o envíos de Formularios POST) en peticiones HTTP, por que el cliente es el navegador (HTML/CSS/Javascript) y necesitas dichas peticiones para realmente enviar esos datos al server, ASP.net lo hace igual, pero de un modo trasparente para el programador, pero las 2 plataformas cumplen el mismo fin: realización de web's dinámicas, saludos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #4 (permalink)  
Antiguo 13/12/2011, 12:48
 
Fecha de Ingreso: septiembre-2010
Mensajes: 10
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Enlaces a funciones ?

a ver, me explico mejor.
En la web hay unos links a distintas opciones. Alguna de estas opciones son una simple función como la que mostraba para no estar logueado.
Estas funciones están en pequeños archivos de php.

Lo que pregunto es si estos links pueden apuntar a una función de php en vez de a un archivo php.

Otro ejemplo: si tengo una tabla con datos y una de las columnas tiene un links para eliminar una fila, ¿ como tendría que hacer este link ?
  #5 (permalink)  
Antiguo 13/12/2011, 13:02
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enlaces a funciones ?

no se puede, por lo menos no como lo planteas.

si usas poo entonces puedes usar una clase controlador y desde ahi usar una url del tipo

http://miurl.dom/mifuncion/parametro1/parametro2

ó

http://miurl.dom/mifuncion/parametro1_parametro2

pero para eso debes dominar un poco más php
  #6 (permalink)  
Antiguo 13/12/2011, 13:04
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Enlaces a funciones ?

no, al menos que crees un archivo PHP que actue como un controlador frontal y uses un modelo tipo MVC, al final con Url Amigables puedes ocultar incluso el verdadero nombre del archivo.

recuerda que el primero en recibir la petición es el servidor web, luego éste se la pasa a PHP por lo cual solo puedes comunicarte con el mismo por patrones de URL y no puedes llamar directamente a una función de PHP sin comparar la url y hacer la llamada explícitamente.

PD: @memoadian no es estrictamente necesario usar POO para hacer controladores frontales, se puede hacer con programación estructurada, aunque no es la vía optima
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 13/12/2011, 13:20
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Enlaces a funciones ?

Dado que apenas empiezas en la programación php (e imagino que en el desarrollo web) te será difícil el no poder invocar procedimientos de la manera "habitual", pero debes comprender que php se ejecuta en el servidor y sólo procesa una cierta información a la vez, por ejemplo, primero llamas al código que genera un formulario. Php lo genera y termina su proceso, si no haces nada con el formulario a php le da igual, él ya hizo lo que se le pedía. Si ese formulario lo quieres regresar con información, debes llamar a otro proceso (código de php) que reciba la información y la procese. De tal forma, no puedes hacer que la web llame funciones como en otras aplicaciones.

Lo más parecido sería usar AJAX, con el cual mediante javascript puedes ejecutar código php y pasarle parámetros a funciones específicas.
  #8 (permalink)  
Antiguo 14/12/2011, 01:11
 
Fecha de Ingreso: septiembre-2010
Mensajes: 10
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Enlaces a funciones ?

Muchas gracias a todos. ¡¡ Perooooo !!

Pensando he descubierto como hacerlo:
Recordar que el problema que deso evitar es tener muchos ficheros php para cosas pequeñas como desloguearte que son 3 lineas de código.

Si creo links por ejemplo: http://www.miurl.com/funciones.php?Opc=x

en el archivo funciones.php mediante GET o POST recupero las variables y mediante switch invoco a la función que necesite.

Así si quiero eliminar una filla de datos puedo pasar ?opc=2&ID=20
Estaría llamando a la opción 2 (elminar) Id de fila 20 de la tabla x.

Imagino que será como lo usais vosotros ¿ no ?
  #9 (permalink)  
Antiguo 14/12/2011, 09:37
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enlaces a funciones ?

En teoria es algo similar, lo que estaria un poco confuso es como vas a saber que funcion es la numero 2, creo que te resultaria mejor si usas un controlador, asi no te quiebras tanto la cabeza.
  #10 (permalink)  
Antiguo 15/12/2011, 01:00
 
Fecha de Ingreso: septiembre-2010
Mensajes: 10
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Enlaces a funciones ?

Porque no se como se hace un controlador. El libro que tengo no menciona nada al respecto.
  #11 (permalink)  
Antiguo 15/12/2011, 07:51
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Enlaces a funciones ?

session_start();

unset($_SESSION["usuario"]);
unset($_SESSION["loging"]);

$link = funcion($clase);

header("Location:$link");

asi alomejor te sirve , tampoco se que funcion kieres realizar alomejor te conviene otro metodo pero sabiendo la funcion seria mas facil de descifrar

Última edición por webankenovi; 15/12/2011 a las 07:56

Etiquetas: enlaces, funciones, usuarios
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 12:41.