WEBALIANZA OOCOMMON PHP LIBRARY
Manual del Programador
Objetos
Objeto page
Objeto requestvariables
Objeto db
Objeto Page
Invocacion:
$variable = new page;
Extensiones:
$variable = new html4page;
$variable = new xhtmlpage;
$variable = new langpage;
Variables:
$body
$docheader
$title
$bodyheader
$footer
$stylesheet
Metodos:
function Page()
function writeln ($string)
function output ()
function headers_nocache ()
function addimage($url)
function addlink ($url,$caption)
Vamos a mostrar el uso del objeto page con un ejemplo:
<?php
include (oocommon.php);
$page = new Page; // Creamos el objeto
$page->title = "Página de Hola Mundo"; // El titulo de la pagina va a ser Pagina de Hola Mundo
$page->writeln ("Hola!!"); // Escribimos en el contenido de la pagina la frase Hola!!
$page->output(); // Y ahora sacamos todo por pantalla
?>
otro ejemplo en el que se muestra mas el poder del objeto page:
...
class LocalPage extends Page
{
function LocalPage {
$this->page(); /* hay que llamar al constructor del objeto extendido !!!! (ya se que en C++ no, pero eto e patxepe )
$this->title = "Videoclub Laser"
$this->header = toda la mierda de diseño de cabecera que quieras meter;
$this->footer = lo mizmo,mierda;
}
...
y cuando uses LocalPage, automaticamente tendrás el titulo Videoclub Laser metido y la mierda puesta en el header :
//...
$page = new LocalPage;
//...
$page->writeln($loquesea);
//...
$page->output();
Hay predefinidas dos clases extendidas de page: HTML4Page y XHTMLPage que son copias de page con los descriptores de documento especificos para cada uno de los estandares.
Namespace de Page
function Page()
Crea un objeto page vacio.
function writeln ($string)
Inserta una linea de texto definida por $string en la pagina. writeln() no inserta <br> al final de cada linea
function output ()
Incrusta todos los datos de la pagina y los escribe. output() sera llamado una sola vez por pagina , a no ser que hagamos varias salidas posibles, como puede ser en este ejemplo:
$p = new page();
// .....
if ($variable = False) {
$p->clear();
$p->writeln(Error !!!! );
$p->Output();
die;
}
$p->Writeln(Bla bla bla bla bla bla bla );
$p->Output();
die;
En tal caso, hay dos salidas de texto, pero solo una de las dos se llega a cumplir. Ademas en la comprobacion de la variable se vacia el contenido de la pagina usando clear() para que asi se descarte cualquier visualizacion anterior.
function clear()
Vacia todo el contenido del cuerpo del objeto page()
function headers_nocache ()
Crea un documento que no sera cacheado por el cliente. Este comando se debe de invocar antes de output()
function addimage($url)
Añade una imagen definida por $url (sin enlace) al documento actual,
function addlink ($url,$caption)
Añade un enlace (link) a una direccion de internet definida por $url con el texto $caption
Ejemplo:
include (oocommon.php);
$p = new page;
$p->addlink(http://www.webalianza.com,Pagina principal de webalianza);
$p->output();
variable $body
Variable en la que se almacena el contenido del cuerpo de la pagina
variable $docheader
Variable en la que se almacena en contenido de la cabecera HTML de la pagina previo al contenido de $bodyheader y $body
variable $title
Variable en la que se almacena el titulo que queremos dar a la pagina
variable $bodyheader
Variable en la que se almacena la cabecera que queramos poner en el cuerpo de la pagina, pero que no forme parte de $body, esto es asi para que cuando en una comprobacion llamemos a clear() no se borre lo que queremos poner en todas las situaciones (cabeceras graficas, textos, etc...)
variable $footer
Variable analoga a $bodyheader, solo que su contenido de mostrara despues del contenido de $body en vez de antes
variable $stylesheet
Variable que almacena la direccion de internet en la que se haya la hoja de estilos a utilizar por la pagina actual.
Objeto dbconnection
Invocacion:
$variable = new dbconnection($host,$username,$password,$database));
Extensiones:
Ninguna
Variables:
$host
$username
$password
$database
$rows
$table
$link
Metodos:
dbconnection($host,$username,$password,$database));
opentable($ttable)
query($sql,$table);
update()
clean()
insert()
delete()
doRowFromObject($row,$object)
show ($fila_nombre,$fila_valor,$baseurl,$exclude);
show_row($rownumber,$fila_nombre,$fila_valor,$baseurl,$exlude);
show_form($rownumber,$baseurl,$submitter,$exclude);
La clase dbconnection maneja conexiones a servidores de bases de datos mysql. Proximamente (posiblemente en la version 0.60) el soporte multi-sistema estara presente.
Vamos a ver el funcionamiento de dbconnection con un sencillo ejemplo
<?php
include ("oocommon.php");
$p = new html4page(); // creamos la pagina
$db = new dbconnection("localhost","","","portal"); // creamos la conexion a la BD
$db->opentable("productos"); // abrimos la tabla productos
$exclu[0] = "extendido"; // un array que indica que campos no queremos sacar
$exclu[1] = "level";
$exclu[2] = "idcategoria";
$p->writeln($db->show_row(0,"id",titulo,$exclu)); // mostramos la fila 0.
$p->output();
?>
este ejemplo nos abre la tabla productos y captura todo su contenido. Despues mediante $db->showrow() mostramos dicha fila como una tabla HTML que pasamos a writeln para que la añada a la pagina actual y por ultimo realizamos el vuelco de la pagina.
: