Te encuentras en: Inicio » CakePHP
Categoría:
CakePHP
Ayuda, tutoriales, códigos de ejemplo y mi experiencia trabajando con este framework.
Después de algo mas de un año trabajando con CakePHP todavía estoy aprendiendo y mejorando una de las “piedras angulares” del framework CakePHP y es a usar y manejar el enrutador, el archivo routes.php El framework MVC de CakePHP es fantástico para el desarrollo de aplicaciones y webs con cierta soltura y rapidez y es uno de sus puntos fuertes, pero y el SEO? las urls amigables en CakePHP son algo ortopédicas y poco “naturales” a no ser que utilicemos el routes.php porque al Sr. Google no se gusta nada una url que diga : mi_proyecto.com/articulos/post/1 . Esta es la estructura que propone cakephp para el desarrollo “ágil” de aplicaciones, un controlador llamado articulos_controller.php una acción o función llamada function post() y el identificador del post 1. Bien, pero esto no es amigable ni mucho menos RELEVANTE para Google y es aquí cuando surge routes.php para solventar la carencia de crear urls relevantes y útiles a nivel SEO. Pero como he indicado en la primera frase de mi artículo, llevo mas de un año usando cakephp y routes.php y cada día descubro algo nuevo y voy optimizando el código más y más. Para usar routes.php se necesita un buen conocimiento [...]
En este post voy a explicar como es de simple usar ajax y jquery en cakephp. Se puede usar ajax para muchos temas, guardar los checkbox de un formulario sin tener que hacer submit, para seleccionar subcategorias de una categoría en varios select option aninados, para recargar el contenido de una determinada zona de la web, en general para muchas cosas pero siempre que se necesite. En este caso voy a explicar como usar menus desplegables con ajax y jquery. De manera que teniendo un menú select option con una serie de categorías al seleccionar una de ellas te aparezcan sus subcategorías. Básicamente necesitamos descargar y subir la librería de jquery a nuestro servidor o usar la que hay en Google Code, crear nuestro formulario con una serie de id que son los elementos que harán de “bindeo” con jquery, una función en nuestro controlador que busque las subcategorias de la categoria dado el id y una vista para renderizar el select option con las subcategorías que hemos obtenido Lo explico con mas detalle. 1.- INSERTAR LA LIBRERÍA DE JQUERY Sino nada va a funcionar, podéis incluir directamente este fragmento de código entre las etiquetas <head></head> <script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script> 2.- [...]
Lo primero algo de teoría.. ¿Qué es Securimage? Securimage es un código abierto libre script PHP CAPTCHA para la generación de imágenes complejas y códigos CAPTCHA para proteger las formas de spam y el abuso. Se puede añadir fácilmente en los formularios existentes en su sitio web para proporcionar una protección contra los robots de spam. Se puede ejecutar la mayoría en cualquier servidor web, siempre y cuando usted tiene PHP instalado, y el apoyo de GD en PHP. Securimage hace todo, desde la generación de las imágenes CAPTCHA para validar el código escrito. Características * Mostrar una imagen en sólo 3 líneas de código * Validar presentado las entradas en menos de 6 líneas de código * Longitud del código personalizable * Personalizable conjuntos de caracteres * Soporte de fuentes TTF * Utilice fuentes personalizadas GD cuando TTF no está disponible * Fácil de añadir imágenes de fondo * Múltiples colores, distorsionada, opciones de texto y transparente * Personalizable Flash para transmitir audio en MP3 de código CAPTCHA * Utilice una lista de palabras para la generación de códigos Fuente: http://www.phpcaptcha.org/ Ahora la receta para crear el captcha de seguridad e integrarlo con CakePHP Lo primero descarga las librerías, [...]
En este post voy a explicar como hacer una función que bloquea ips de robots o simples usuarios spammers. Para esto mezclaremos la utilización de archivos de configuración donde iremos registrando en un array las ips que queremos bloquear. Lo primero es crear un archivo de configuración que podrá ser utilizado desde cualquier parte de la aplicación. En este archivo de configuración crearemos una variable que contendrá un array con registros de ips. /app/config/ip_block.php <?php $config['Ip']['block'] = array(‘xxx.xxx.xxx.xxx’); ?> Esta funcionalidad es ideal para ir insertando las ips manualmente, previo análisis. A continuación la función con la lógica que procesa la ip y las busca en el array de ips bloqueadas que hemos definido anteriormente en el archivo de configuración. lo ideal será colocarla en /app/controllers/app_controller.php <? class AppController extends Controller { function __construct() { parent::__construct(); } /** * funcion para bloquear ips. * Esta funcion se puede llamar desde cualquier funcion/controlador para comprobar si una ip está bloqueada. * Las ips bloqueadas se guardan en un array en /app/config/ip_block.php * La funcion simplemente carga el archivo de configuración y le las ips que hay registradas y las comprueba con la ip que enviamos * Si la ip coincide redirigimos [...]
Para poder recortar una imagen mediante una seleccion se consigue con imgAreaSelect que es un plugin de JQuery para seleccionar un area de una imagen. El publin se puede configurar y permite diferentes funcionalidades que nos ayudará y nos enriquecerá la tarea de recortar una imagen, ya sea a nosotros a los usuarios cuando por ejemplo quieren subir un avatar y recortar la zona que quieran de la foto previamente subida. El plugin permite trabajar escalando imágenes o recortando unas dimesiones asignadas. Por ejemplo. 1.- Selecciona y recorta una imagen con unas dimensiones determinadas. $(document).ready(function () { $(‘#avatar’).imgAreaSelect({ maxWidth: 200, maxHeight: 150, handles: true }); }); 2.- Selecciona y recorta la foto manteniendo un porcentaje escalado previamente asignado. $(document).ready(function () { $(‘#avatar’).imgAreaSelect({ aspectRatio: ’4:3′, handles: true }); }); Esto es muy sencillo de integrar en php y jquery pero bueno como ya sabemos en Cakephp se complica un poquito mas debiado a que hay que seguir el patrón de diseño MVC. Como siempre habrá que crear un componente que interactue con el controlador o controladores, un helper para incluir en la vista las funciones de javascript y la implementación de la vista. Para esta receta necesitaremos 1.- El componente /app/controllers/components/jq_imgcrop.php [...]
Últimos Comentarios
6-02-2012 02:54
3-02-2012 21:40
3-02-2012 17:08
3-02-2012 05:38
1-02-2012 15:48
1-02-2012 10:12
1-02-2012 04:27
1-02-2012 00:57