10.4.11

Bloquear o conseguir un rango de IP

Muchas veces tuve la necesidad de bloquear el ingreso a un sitio desde cierto país, o permitir sólo el acceso de clientes que ingresen desde el mismo. Para esto fue siempre necesario tener un base de datos de IP's que pertenezcan a cierto poía o zona, y luego de mucha (verdaderamente mucha) búsqueda encontré un sitio que me dió la solución a esto, estoy hablando de www.countryipblocks.net, que nos dá la opción de elegir si bloquear o permitir el acceso desde un país a travez de su rango IP y nos autogenerará el código para nuestro archivo .htaccess, o simplemente nos dará la lista de IP's para que la usemos a nuestro antojo.

Luego, teniendo esa lista de direcciones IP podemos utilizar el siguiente codigo PHP para efectuar la acción deseada:

Código:
    if($_SERVER["HTTP_X_FORWARDED_FOR"]){
          $ip =  $_SERVER["HTTP_X_FORWARDED_FOR"];
        }else{
          $ip =  $_SERVER["REMOTE_ADDR"];
        } // aquí conseguimos la IP del usuario que ingresó al sitio

Luego comparamos esta direccion con nuestra lista de IP's y efectuamos la acción desada.

Mostrar todas las variables de un tipo y sus valores

Con el siguiente código se imprimiran en pantalla todas las variables de cierto tipo, ej. "$_SESSION", y el valor de cada una.

Código:


<?php foreach( $_SERVER as $key=>$value ) {
   echo 
"Variable: $key, Valor: $value<br>\n";
}
?>

5.4.11

Seleccionar varios valores de un solo campo en SQL

ver este enlace

Listado de las principales variables en Joomla!

En este listado se pueden ver las variables mas importantes y principales que se usan en Joomla! y que es útil conocer si vamos a, por ejemplo, crear un módulo de cero.

-  JURI::base();   //variable que contiene la URL del home del sitio o del administrador, dependiendo de donde se ejecute la funcion
-  JURI::root();   //variable que devuelve la URL del home del sitio, sin importar desde donde la llamemos
- JURI::getInstance(); // nos da la URL exacta de donde estamos, mostrando una SEF si está activado
- global $mainframe;
   $mainframe->getCfg( 'live_site' ); // otra opcion para conseguir la URL del home
-  JPATH_BASE  // contiene la ruta fisica del sitio o administrador, depende donde estemos al momento de utilizar la variable, ej.: D:|html_public\www\misitio.com
- JPATH_SITE representa la ruta raíz de la aplicación JSite // D:|html_public\www\misitio.com\
- JPATH_ADMINISTRATOR representa la ruta raíz de la aplicación JAdministrator. // D:|html_public\www\misitio.com\administrator\
- JPATH_ROOT es la ruta de acceso raíz de la instalación de Joomla y no depende de ninguna aplicación.


- <?php
$app =& JFactory::getApplication();
//$app->redirect( <url> ); // esto nos redirecciona a la URL que pasemos como parametro
echo $app->getTemplate();
// acá conseguimos el nombre del template que estamos usando, muy util cuando queremos incluir en un modulo o componente que estamos creando archivos que estan en la carpeta del template actual

// para saber 'SEF'  esta activado
$mainframe = JFactory::getApplication();
echo $mainframe->getCfg('sef');

getCfg() nos permite recuperar los valores de variables declaradas en el configuration.php
?>

PARA CONSEGUIR EL SUFIJO DE CLASE DE UN PAGINA


$menus      = &JSite::getMenu();
$menu      = $menus->getActive();
$pageclass   = "";

if (is_object( $menu )) :
// si es Joomla 1.7
$params = $menu->params;
// si es Joomla 1.5
$params = new JParameter( $menu->params );
$pageclass = $params->get( 'pageclass_sfx' );
endif;

PARA AGREGAR UN SCRIPT AL HEADER DEL SITIO

<?php

$document = JFactory::getDocument ();
$document->addScriptDeclaration ( "// <![CDATA[
window.addEvent('domready', function(){ $$('dl.tabs').each(function(tabs){ new KunenaTabs(tabs); }); });
// ]]>" );

?>

Crear un módulo en Joomla

Ver este enlace