http://martin.com.uy/wp-content/themes/martinuy2/live/proxy.php?url_especifica=
0
24
Mar
2008

Presento Mi Fotolog (script)

fotologHace algunos días comentaba que había empezado a programar un fotolog. No puedo decir que está terminado pero sí “usable”. La idea, el diseño y las características son similares al original: perfil (con protección anti-spam para el correo), archivo de fotos, amigos/favoritos, últimas actualizaciones, etc. Más sencillito pero a la vez limpio.

Se permite el posteo de usuarios deslogueados, editar entradas en cualquier momento, subir varias fotos por día y otras cosas que en el original son solo para usuarios Premium. Pero la cuestión más importante es que uno es dueño de la información (texto y fotos) y la puede respaldar facilmente.

El sistema es multi-usuarios con un Panel de Administración para aceptar/denegar nuevos registros, aprobar usuarios (el registro es con verificación de correo y aprobación del administrador), suspender cuentas, eliminarlas y revisar los posts denunciados.

En el tintero quedan mil cosas: depurar el código, mejorar la documentación, la navegabilidad, la paginación, el mod_rewrite de Apache, la búsqueda de usuarios, etc. Igual no tengo apuro, lo bueno de esto es que uno le puede ir agregando las cosas a medida que las precisa jaja.

Pueden visitarlo aquí: http://cafeciudad.com/fotolog

Agradezco sugerencias y críticas!

# 1
14
Mar
2008

Separar diseño de código en php usando el motor de plantillas de phpBB (II)

Para esta segunda parte de la serie (ver la primera aquí) explicaré como utilizar condicionales, como anidar bloques y como generar salidas en distintas páginas html utilizando el mismo script php.

Condicionales.

Los condicionales son estructuras que permiten ejecutar una parte del código si se cumple tal condición. Supongamos que si la variable $i es igual a 1, queremos mostrar un bloque dentro de la página html y que si no se cumple queremos mostrar la página sin ese bloque.

Código php:

<?php
include_once("template.php");

$template = new template();
$prueba = "Esta es una prueba";
$template->assign_vars(array(
'VARIABLE1' => $prueba,
));
$i = rand(0, 1); //$i toma un valor entero aleatorio en el rango 0 - 1
if($i == 1)
{
$condicional_out = array(
‘I’ => $i,
);
$template->assign_block_vars(‘condicional’, $condicional_out);
}

$template->set_filenames(array(
'body' => 'prueba.html'));
$template->display('body');
unset($template);
?>

Código HTML:

<html><head><title></title></head><body>
<table>
<tr>
<td>
{VARIABLE1}
</td>
</tr>
</table>
<!– BEGIN condicional –>
<table>
<tr>
<td>
{condicional.I}
</td>
</tr>
</table>
<!– END condicional –>
</body></html>

La primera tabla se mostrará siempre. La segunda tabla aparecerá unicamente si la condición se cumple. Como pueden ver, la idea es la misma que la de las iteraciones.


Leer el resto del artículo »

11
Mar
2008

Separar diseño de código en php usando el motor de plantillas de phpBB

En el post anterior ya tiraba algunas líneas sobre como separar el diseño del código php usando el motor de plantillas de phpBB. Voy a continuar en este artículo con eso, explicar como hacer iteraciones y dejo un ejemplo práctico para descargar.

Recuerdo en primer lugar como quedaría la página php:
<?php
include_once("template.php");
//Incluimos el motor de plantillas
$template = new template(); //Creamos objeto que almacenará las variables para mostrar
$prueba = "Esta es una prueba"; //Variable con una cadena
$template->assign_vars(array(
'VARIABLE1' => $prueba,
//Asignamos las variables a los identificadores
));
$template->set_filenames(array(
'body' => 'prueba.html')); //Nombre del archivo a donde se volcará la información (la ruta ya está fijada en template.php)
$template->display('body'); //Generamos la salida
unset($template); //Limpiamos el objeto
?>

En el caso del código HTML sería:

<html><head><title></title></head><body>
<table>
<tr>
<td>
{VARIABLE1}
</td>
</tr>
</table>
</body></html>


Leer el resto del artículo »

9
10
Mar
2008

Programar un fotolog desde cero.

Esta última semana estuve ausente del blog y fue porque anduve programando un fotolog desde cero o from scratch como dirían los anglosajones. Una forma de aprender programación web es tomar un script, estudiar cómo está escrito (funcionamiento y entorno) y empezar a modificarlo a gusto, con el viejo y querido método de ensayo y error. Pero esta vez cambié la apuesta y decidí arrancar de la nada. Voy a escribir algunas de las observaciones que me viene permitiendo la práctica -el trabajo lo voy a presentar cuando esté un poco más avanzado-. Aclaro antes de continuar que tengo poco conocimiento de programación y fue adquirido de forma autodidacta. El lenguaje usado es PHP con algo de SQL para las consultas a la base de datos y obviamente HTML en la salida.

Primera idea: separar código de diseño.

La primera cosa importante al programar en php es separar el código del diseño. Eso permite trabajar más cómodo y ordenado. Existen soluciones como Phplib y Smarty pero preferí readaptar el sistema de phpBB -que a su vez está inspirado en el primero- porque no hay que agregar nada al servidor, es poderoso y extremadamente fácil de usar. Basicamente se trata de dos grandes clases (template y template compile) que ubiqué en un mismo archivo (template.php) con algún cambio -cuando aprolije y limpie el código, lo ofrezco al público-. La cuestión a partir de allí es sencilla:


Leer el resto del artículo »