jeje el mismo que escribio hace tiempo ya en
www.zonaphp.com un articulo sobre como crear un foro en php y mysql exando lexes jajaja esta haciendo ahora un foro basado en un solo objeto, en una clase, jeje y como mu bien dice josemi es un embrion aun jajaja aun que ya esta la parte minima hecha, foros, mensajes de cada foro, respuestas de cada mensajes y esas cosas

jeje
En cuanto a la licencia es PHP, la cual se basa en BSD, es decir el code es mio, podeis hacer uso de el gratuitamente, modificarlo a vuestro gusto

siempre y cuando dejeis el autor original, en este caso yo jeje, la verdad es que lo iva a hacer GPL pero bueno ... me fio un poquito mas de la BSD si no os parece mal
En cuanto acabe el foro lo pongo por aqui si quereis y bueno ... la clase es muy sencilla tiene unos metodos simple sy listo
La clase es tan sencilla que se basa en esto:
Código PHP:
/*
+--------------------------------------------------------------------+
| DForum v.0.0.1 |
+--------------------------------------------------------------------+
| Copyright (c) 2003 Dikode |
+--------------------------------------------------------------------+
| This source file is subject to version 2.02 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
| available at through the world-wide-web at |
| [url]http://www.php.net/license/2_02.txt.[/url] |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| [email][email protected][/email] so we can mail you a copy immediately. |
+--------------------------------------------------------------------+
| Authors: Ivan Rodriguez Espada <[email protected]> |
+--------------------------------------------------------------------+
*/
error_reporting(E_ALL&~E_NOTICE);
class DForum {
var $host;
var $user;
var $pass;
var $BBDD;
var $id_connection;
var $datos = array();
function DForum($host, $user, $pass) {
$this->host = $host;
$this->user = $user;
$this->pass = $pass;
$this->BBDD = "DForum";
$this->id_connection = mysql_connect($this->host, $this->user, $this->pass) or die (mysql_error());
mysql_select_db($this->BBDD, $this->id_connection) or die (mysql_error());
return $this->id_connection;
}
function getForums($SQL = "SELECT id_forum, forum_title FROM forums") {
$expresion = "from ([a-z0-9_]+)";
if(eregi ($expresion, $SQL, $nombre)) {
$tabla = $nombre[1];
}
$celdas = mysql_list_fields($this->BBDD, $tabla, $this->id_connection);
$columnas = mysql_num_fields($celdas);
$campos = array();
$dato = array();
for ($i = 0; $i < $columnas; $i++) {
$campos[] = mysql_field_name($celdas, $i);
}
$consulta = mysql_query($SQL, $this->id_connection) or die(mysql_error());
$registros = mysql_num_rows($consulta) or die(mysql_error());
while($campo = mysql_fetch_array($consulta)) {
for($j = 0; $j < count($campos); $j++) {
$dato[$j] = $campo[$campos[$j]];
}
$this->datos[] = $dato;
}
return $this->datos;
}
function getForumInfo($id_forum) {
$id_forum = $id_forum-1;
$SQL = "SELECT autor, data FROM messages WHERE forum = $id_forum ORDER BY data DESC LIMIT 0, 1";
$query = mysql_query($SQL, $this->id_connection) or die (mysql_error());
while($d = mysql_fetch_array($query)) {
return $d["autor"] . "-" . date("d-m-Y", $d["data"]) . "<br>";
}
}
function countForumMessages($id_forum) {
$id_forum = $id_forum - 1;
$SQL = "SELECT id_message FROM messages WHERE forum = $id_forum AND id_forum = 0";
$query = mysql_query($SQL, $this->id_connection) or die (mysql_error());
return mysql_num_rows($query);
}
function getForumMessages($forum) {
$forum = $forum - 1;
$SQL = "SELECT id_message, autor, title, message, data, answers, id_forum, forum FROM messages WHERE id_forum = 0 AND forum = $forum ORDER BY data DESC";
return $this->getForums($SQL);
}
function getMessageInfo($id_message) {
$SQL = "SELECT id_message, autor, title, message, data, answers, id_forum, forum FROM messages WHERE id_message = $id_message";
return $this->getForums($SQL);
}
function getAnswerInfo($id_message) {
$SQL = "SELECT id_message, autor, title, message, data, answers, id_forum, forum FROM messages WHERE id_forum = $id_message";
return $this->getForums($SQL);
}
}
jeje simplemente hay que meterle metodos y luego llamarlos y punto jeje cada uno se hace la plantilla que quiera y usa los metodos y san sacabo jeje no, ami me gusta trabajar asi jeje con objetillos y esas cosas y como toy aburrido en el curro pos me lo toy haciendo, por que se que me va a ser bastante util.
Un saludillo!!!