|

YouAre, nuevo proyecto de Blogs Media

Hace unos minutos hemos presentado en la corporativa de Blogs Media y en Flickr, el proyecto que teníamos entre ceja y ceja desde el mes de mayo y del que ya se puede pedir invitación: YouAre:

Logo de YouAre

YouAre es la red social para construir tu identidad real compartiendo lo que haces y lo que te gusta con las personas que te interesan ya sea desde una perspectiva profesional o de amistad.

YouAre es publicación de contenidos por microblogging (con tipologías de texto, vídeo y fotos), networking, canales de ciudad, bookmarking, importación de contenido…

(…) youare.com. Es el dominio símbolo de lo que significa internet. El dominio perfecto para desarrollar una red social. El dominio para ser y estar…

Más información en: Presentando YouAre (youare.com)

links for 2007-12-24

Vacaciones

Estaré una semana de vacaciones, para olvidarme un rato del PHP, el CSS y parecidos. Desearos unas Felices Fiestas y que el próximo año nos sigamos leyendo mutuamente.
Mientras habrá algún que otro quicklink y poco más.

Ejemplos de mod_security

La gente de Ask Apache nos ofrece una serie de ejemplos sobre el uso de mod_security, el cual da la posibilidad de escanear todos los mensajes recibidos en tu web, incluyendo POST, trackbacks, pings, Ajax, etc… y permite crear reglas que paren el spam y prevean ataques.

Algunos ejemplos están centrados en DreamHost, lo que es bueno para los usuarios de este hosting.

De los ejemplos que ofrece me gustaría destacar:

Bloquear el spam de WordPress


SecFilterSignatureAction deny,nolog,status:403
SecFilterSelective ARG_url "casino|ringtone|lyrics"
SecFilterSelective ARG_comment_post_ID "^$"
# reject blog spam from all POST and GET fields
SecFilterSelective ARGS "blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam \
blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam|blockspam \
nomorespam|nospam"

La directiva FilesMatch indica que solo ha de ejecutarse en esos ficheros. La línea ARG_url indica que se tomará como spam las peticiones con un campo en el form que tenga name o id como url alguno de los valores que se indican. Algo parecido pasa con la línea ARG_comment_post_ID, que tomará como spam los mensajes que no envie en campo comment_post_ID. Y la última línea busca en todos los get y post alguna de las palabras que se indican.

mod_security Guide and Examples of use in .htaccess

Librería PHP para SVN

Normalmente no es muy frecuente acceder mediante PHP a SVN, pero nos podemos encontrar con la situación de necesitar obtener archivos de SVN y para ello nada mejor que esta librerí.

PHP SVN Client recupera ficheros del SVN sin necesidad de otras aplicaciones. Accede al repositorio SVN mediante el protocolo WebDAV y permite obtener una lista de ficheros en un directorio, recuperar una revisión de un fichero, recuperar los logs de los cambios realizados para un fichero entre dos revisiones y obtener la última versión del repositorio.

$svn  = new phpsvnclient;
// Indica el repositorio
$svn->setRespository("http://dominio.com/svn/");
// Obtiene los ficheros de un directorio, la última versión
$files_now = $svn->getDirectoryFiles("/trunk/dir/");
// Obtiene la versión 7 de un directorio
$files_7   = $svn->getDirectoryFiles("/trunk/dir/",7);
// Obtiene la última versión de un fichero
$phpajax_now = $svn->getFile("/trunk/directorio/fichero.php");
// Obtiene la versión 7 de un fichero
$phpajax_7   = $svn->getFile("/trunk/directorio/fichero.php",7);
// Obtiene los logs
$logs = $svn->getRepositoryLogs(2,5);

PHP SVN Client

Mostrar una traza recursiva con PHP

Una de las cosas que más me gusta de Java es que cuando se produce una excepción, el error que te muestra te saca una traza de toda la ejecución de procesos (qué función falla, en qué línea y qué funciones se han llamado hasta llegar a ese punto). En PHP a veces los errores son algo simples, falla tal cosa en tal línea.

Afortunadamente podemos mejorar los mensajes de debug para poder mostrar la misma información: línea del archivo, fichero y qué funciones han sido las que han llamado a la actual (backtrace).

Para poder realizarlo se ha de usar las variables __FILE__ y __LINE__ y la función debug_backtrace(). El código necesario sería el siguiente:

function debug($msg, $label = 'DEBUG', $stealth = FALSE) {
if (defined('DEBUG') && DEBUG) {
if (is_bool($msg)) {
$msg = $msg ? 'TRUE' : 'FALSE';
}
$display = $stealth ? ' style="display: none;"' : '';
$backtrace = debug_backtrace();
$debug = array();
$stack = (isset($backtrace[1]['class']) ? "{$backtrace[1]['class']}::" : '')
. (isset($backtrace[1]['function']) ? "{$backtrace[1]['function']}" : '');
if ($stack) {
$debug[] = $stack;
}
$debug[] = "Line {$backtrace[0]['line']} of {$backtrace[0]['file']}";
$debug = implode('
', $debug); print "{$label}: {$debug}:
".print_r($msg, 1)." \n”; } }

Programming Tips #9 “debug_backtrace”

ZH: framework Ajax

ZH es un framework Java que nos permite desarrollar aplicaciones web con la posibilidad de usar Ajax y widgets con XUL y XHTML. No es necesario que el navegador soporte XUL ya que ZH lo convertirá a XHTML.
Dispone de un lenguaje de etiquetas propio llamado ZUL que facilita la creación de componentes incluso para no desarrolladores. Basado también en un sistema de eventos, hace mas intuitivo la creación de aplicaciones tipo desktop.
Soporta los siguientes navegadores: Internet Explorer 6+/7, Firefox 1+, Safari 2+, Mozilla 1+, Opera 9+ y Camino 1+.
ZH

|

phpWebSite: CMS para creación de webs

phpWebSite es un CMS que nos facilita la creación de webs. Que con la ayuda de una administración web podremos mantener y gestionar nuestra web de forma sencilla.

Además el diseño puede ser cambiado gracias a un layout flexible. La contenido está organizado mediante categorías y puede ser ampliado mediante comentarios de otros usuarios.

Existe muchas caracterís y el desarrollo crece rápidamente mediante la creación de nuevos módulos.

phpWebSite

Vía / International PHP Magazine