Foros del Web » Programando para Internet » PHP »

sobre funciones

Estas en el tema de sobre funciones en el foro de PHP en Foros del Web. NOTA: mis conocimientos de PHP son básicos!! Hola! Les planteo la duda y a ver si me pueden ayudar con esto ;) Tengo varios archivos ...
  #1 (permalink)  
Antiguo 16/12/2009, 01:04
 
Fecha de Ingreso: diciembre-2009
Ubicación: Linz
Mensajes: 48
Antigüedad: 14 años, 4 meses
Puntos: 1
sobre funciones

NOTA: mis conocimientos de PHP son básicos!!
Hola!

Les planteo la duda y a ver si me pueden ayudar con esto ;)

Tengo varios archivos en los cuales se verifica la existencia de cookies, si está logueado, te manda al menu o a la pagina que quieres ver, si no lo estás te manda a login.php ya que esta verificación del cookie es repetitiva en cada archivo que tengo (y tendré), quiero saber cómo hacer para poder llamar a esa comprobacion por funciones.

El archivo normal es asi:

Código PHP:
<?php
if(isset($_COOKIE['ID_my_site']))
{
    
$username $_COOKIE['ID_my_site'];
    
$pass $_COOKIE['Key_my_site'];
    
$check mysql_query("SELECT * FROM users WHERE username = '$username'")or die(mysql_error());
    
    while(
$info mysql_fetch_array$check ))
    {

        
//si tiene la contraseña incorrecta, se les manda a login.php
        
if ($pass != $info['password'])
        { 
            
header("Location: login.php");
        }
    
        
//si todo esta bien, se les muestra la web de usuarios
        
else
        {
          
?>
            <html>
              mi codigo
            </html>
<?php
        
}
    }

}
else

//si no hay cookie, se le manda a login.php
{
?>
<script type="text/javascript"> 
window.location="login.php"; 
</script> 
<?php 
}
?>
Lo que a mi me gustaría y (y no se si se puede) es que el código sea este:

Código PHP:
<?php 
include "funciones.php";
cabecera1();
?>
mi codigo
<?php cabecera2(); ?>
intenté que cabecera1() tenga un echo "codigo php" y que cabecera2() tenga la otra parte del código, pero al parecer no puedo o al menos mi táctica no me sale ;) porque primero me sale mi código y automáticamente después, me manda al login :(

Será que hay una manera "inteligente" de hacerlo?

muchas gracias por adelantado ;)
  #2 (permalink)  
Antiguo 16/12/2009, 02:37
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: sobre funciones

Para crear una funcion en php la sintaxis es:

function miNombre(parametro1, parametro2, parametroN{

}

Si no vas a usar parámetros simplemente pon los paréntesis sin nada dentro. Y dentro de {} pon el código php que quieras. Y si quieres que algo salga en pantalla y esté dentro de la función ponle un echo delante.
  #3 (permalink)  
Antiguo 16/12/2009, 03:32
 
Fecha de Ingreso: diciembre-2009
Ubicación: Linz
Mensajes: 48
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: sobre funciones

ya, si eso lo he intentado antes de postear :)

luego de darle vueltas, he utilizado una solución bastante sensilla ;)

el código de verificacion de login lo he puesto en "funciones.php" y si el usuario esta logueado, hago un cookie=1 y luego return $cookie sino, pues cookie=0, asi que solo tengo que verificar el valor de cookie para saber si está logueado o no ;)

Muchas gracias de todas maneras por la ayuda :) si alguien tiene la misma duda, pues estaré encantado de postear el codigo completo de cada archivo :)

Saludos!!

PD: felicidades y gracias por usar Facebook connect!!!

Última edición por amatosg; 16/12/2009 a las 03:33 Razón: PD
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 05:13.