Posts Tagged ‘librería’

febrero 2, 2010 0

Tutorial de ADOdb: parte I

By in Librerías, PHP

Hola de nuevo. Después de más de un mes de vacaciones blogueras, al trabajo si que he tenido que ir, volvemos a la carga con un nuevo tutorial, en este caso de ADOdb.

ADOdb es una librería para PHP para acceder a bases de datos. La ventaja de usar esta librería está en que si se cambia de base de datos, por ejemplo de MySQL a PostgreSQL, no es necesario reescribir todo el código.

Lo primero que vamos a hacer es descargar la librería de la sección de descargas. Una vez tengamos la librería vamos a ver como conectarnos a una base de datos.

Para ello vamos a ver un pequeño ejemplo:

<?php

include('adodb/adodb.inc.php'); //Incluimos la librería

$conexion = ADONewConnection('mysqli'); // Creamos una conexión con el Driver MySQLi
$conexion->connect('host', 'user', 'password', 'database_name'); //Nos conectamos a la base dedatos

$recordSet = $conexion->Execute('SELECT * FROM tabla'); //Realizamos una consulta

if(!$recordSet) //Si ha habido algun error
{
  echo $conexion->ErrorMsg(); //Mostramos el mensaje de error
}
else
{
  while(!$recordSet->EOF) //Mientras no estemos al final de RecordSet
  {
    echo $recordSet->fields[0].' - '.$recordSet->fields[1].'<br>'; //Imprimimos los datos
    $recordSet->MoveNext(); //Nos movemos al siguiente registro
  }
  $recordSet->Close(); //Cerramos el RecordSet, esto es opcional
}

$conexion->Close(); //Cerramos la conexión. Opcional.
?>

Como podemos ver lo primero que hacemos es crear una conexión. Para eso llamamos a la función ADONewConnection indicándole el driver de base de datos que queremos usar. Esta función nos devuelve un objeto ADOConnection, mediante el cual realizaremos las consultas y otras operaciones a la base de datos. Aquí podemos ver el listado de bases de datos soportadas por ADOdb.

Una vez que hemos creado nuestra conexión lo siguiente es realizar la conexión en si. El método que hemos usado es el Connect. En este caso le pasamos el host de la base de datos, el usuario, el password y el nombre de la base de datos. Además de este método de conexión hay otros dos:

  • PConnect: Crea una conexión persistente.
  • NConnect: Fuerza a realizar una nueva conexión.

Una vez que nos hemos conectado ejecutamos una consulta con el método Execute, que nos devuelve un objeto ADORecordSet, y mostramos los datos devueltos.

Con esto queda concluida esta primera parte del tutorial. En las siguientes partes hablaremos más detenidamente de la clase RecordSet y de como realizar distintas consultas a la base de datos.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , , ,

diciembre 1, 2009 1

Introducción a CKFinder

By in Herramientas, JavaScript, Librerías

CKFinder es un navegador de archivos basado en AJAX muy potente y fácil de usar. Su sencilla interfaz lo hace intuitivo y rápido de aprender a todo tipo de usuarios, desde los avanzados a los noveles. Lo podemos descargar desde su página web, donde está preparado para varios lenguajes y/o tecnologías: PHP, ASP, ASP.Net y ColdFusion.

Así se ve CKFinder

Así se ve CKFinder

Básicamente esto es lo que dice la web de CKFinder. También nos aparece el típico listado de características, de las cuales las más destacables son:

  • Navegador en árbol.
  • Thumbnails de alta calidad.
  • Multilenguaje.
  • Menús contextuales.
  • Control total por parte del desarrollador.
  • Control total para el usuario.
  • Ligero.
  • Respuesta rápida, sin refrescos.
  • Subida segura de archivos.
  • Código fuente completo incluido.
  • Fácil integración con el editor CKEditor.

Observaréis que la última característica la he puesto en negrita. Esto es así porque esta herramienta nos va a servir para añadir algunas opciones nuevas a nuestros editores basados en CKEditor, lo que veremos en la próxima entrega del tutorial de CKEditor.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , ,

noviembre 18, 2009 18

Tutorial de CKEditor. Parte II.

By in JavaScript, Librerías

En la primera parte del tutorial vimos las distintas formas de configurar CKEditor. Hoy vamos a ver como configurar la barra de herramientas.

Para configurar la barra de herramientas tenemos dos formas:

  • Asignar a la propiedad toolbar una definición de la barra de herramientas.
  • Crear una propiedad toolbar_name con la definición de la barra de herramientas y posteriormente asignar a la propiedad toolbar el literal ‘name’.

Vamos a ver un ejemplo, con el segundo método, de creación de una barra de herramientas:

config.toolbar = 'Full';

config.toolbar_Full =
[
    ['Source','-','Save','NewPage','Preview','-','Templates'],
    ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
    ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
    ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
    '/',
    ['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
    ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
    ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
    ['Link','Unlink','Anchor'],
    ['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
    '/',
    ['Styles','Format','Font','FontSize'],
    ['TextColor','BGColor'],
    ['Maximize', 'ShowBlocks','-','About']
];

Con esto definimos una barra de herramientas muy completa. Como vemos la barra de herramientas es un array donde cada elemento es o bien un array o bien el literal ‘/’. Si el elemento es un array cada elemento es un botón. Si en lugar de un array nos encontramos con el carácter ‘/’ este fuerza un salto en la barra de herramientas, es decir nos crea una nueva barra debajo de la anterior.

Dentro de la definición de cada uno de los bloques de botones podemos encontrar el identificador de cada uno de los botones o el carácter ‘-‘ que nos crea un espacio en blanco.

La definición de la barra de herramientas debe ir en el archivo de configuración, o bien en el por defecto o en uno propio, explicado en el artículo anterior.

Podemos si lo queremos crear la barra de herramientas al crear la instancia de esta forma:

CKEDITOR.replace( 'editor1',
    {
        toolbar :
        [
            ['Styles', 'Format'],
            ['Bold', 'Italic', '-', 'NumberedList', 'BulletedList', '-', 'Link', '-', 'About']
        ]
    });

Como se puede ver es bastante sencillo configurar la barra de herramientas a nuestro gusto. Si teneis alguna duda intentaré resolverla en los comentarios.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , , ,

noviembre 16, 2009 4

Tutorial de CKEditor. Parte I.

By in JavaScript, Librerías

Hace ya bastante tiempo se comenzó en este blog un tutorial sobre FCKEditor, uno de los muchos editores WYSIWYG que hay, pero se dejó abandonado. Varias fueron las razones, principalmente la falta de tiempo y la salida de CKEditor.

Después de un tiempo en el tintero, y gracias a un comentario de un lector, me he decidido a comenzar un tutorial introductorio a CKEditor. Puede servirnos como introducción el artículo “Probando CKEditor” donde se da un vistazo rápido a esta herramienta.

Lo primero que vamos a ver es como configurar nuestro editor. Para ello tenemos tres opciones:

  • Definir la configuración al crear el editor.
  • Usar el archivo config.js para colocar la configuración en este.
  • Crear nuestro propio archivo de configuración.

Definir la configuración al crear el editor:

Cuando creamos una instancia del editor con el método replace podemos indicarle la configuración de este. De esta forma nos evitamos tener que tocar la instalación del editor. Veamos como se haría:

CKEDITOR.replace( 'editor1',
    {
        toolbar : 'Basic',
        uiColor : '#9AB8F3'
    });

Hay que tener en cuenta que lo que se pasa a la función es la definición literal de un objeto, por lo que tendremos que usar la sintaxis parametro : valor, y tener cuidado de no usar el símbolo “igual que” (=).

Usar el archivo config.js para colocar la configuración:

Si editamos el archivo config.js, en la misma carpeta donde está ckeditor.js, veremos que hay una función llamada CKEDITOR.editorConfig. Dentro de esta tendremos que colocar los valores de configuración que deseemos.

CKEDITOR.editorConfig = function( config )
{
    config.language = 'fr';
    config.uiColor = '#AADC6E';
};

Definir la configuración en nuestro propio archivo:

En este caso nos crearemos un archivo donde colocaremos la configuración. De esta forma no tenemos que modificar la instalación de CKEditor y támpoco tendremos que tocar nuestras páginas, tan solo el archivo de configuración. Dentro de él definiremos la función CKEDITOR.editorConfig, podemos por ejemplo copiar el config.js como base, y luego indicaremos al editor donde se encuentra este archivo de la siguiente manera:

CKEDITOR.replace( 'editor1',
    {
        customConfig : '/custom/ckeditor_config.js'
    });

Conclusiones:

Como hemos podido ver el editor nos ofrece varias formas para configurarlo, dependiendo de nuestras necesidades o nuestros gustos. Personalmente me gusta más la tercera, aunque cada cual es libre de hacerlo a su manera.

Espero que esta primera parte les haya sido de ayuda pues esta es la base para customizar nuestro editor. Hasta la próxima entrega del tutorial, que espero pueda tenerla lista para el miércoles.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , , ,

julio 27, 2009 3

Tutorial de FCKeditor. Parte I.

By in JavaScript, Librerías

Hola a todos. Vamos a comenzar un tutorial sobre un editor WYSIWYG llamado FCKeditor. Para empezar vamos a ver un pequeño ejemplo que pasaré a explicar después.

FCKEditorEjemplo1.html:

<html>
<head>
<title>Ejemplo FCKEditor</title>
<script type="text/javascript" src="./fckeditor/fckeditor.js"></script>
</head>
<body>
<form action="form.php" method="post">
<script>
var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
oFCKeditor.BasePath	= document.location.href.substring(0, document.location.href.lastIndexOf('/')) + "/fckeditor/";
oFCKeditor.Height	= 300 ;
oFCKeditor.Value	= '<p>Esto es un <strong>texto de ejemplo<\/strong>.<\/p>' ;
oFCKeditor.Create() ;
</script>
<input type="submit"/>
</form>
</body>
</html>

Lo primero que hacemos es incluir el script fckeditor.js. Este script se encuentra dentro de la carpeta fckeditor. A continuación creamos un formulario que será procesado por el script form.php y al que se le enviarán los datos mediante el método POST.

Después metemos algo de código JavaScript. Lo que hacemos es crear un objeto de la clase FCKeditor. Esto lo hacemos en la primera linea del script. A continuación configuramos el editor, indicándole la ruta base (oFCKeditor.BasePath), la altura (oFCKeditor.Height) y el contenido del editor (oFCKeditor.Value). Una vez hecho esto creamos el editor llamando al método Create.

A continuación, y ya fuera del script, ponemos un Submit para que envíe los datos al script encargado de procesar el formulario. Veamos el código de dicho script:

form.php:

<html>
<head>
<title>Ejemplo FCKEditor</title>
<script type="text/javascript" src="./fckeditor/fckeditor.js"></script>
</head>
<body>
<h1>C&oacute;digo del texto introducido</h1>
<pre>
<?php
	if (get_magic_quotes_gpc())
		echo htmlspecialchars(stripslashes($_POST['FCKeditor1']));
	else
		echo htmlspecialchars($_POST['FCKeditor1']);
?>
</pre>
</body>
</html>

Este script lo único que hace es mostrarnos el código del texto introducido en el editor.

Podéis ver un ejemplo del código aquí. Y como es costumbre descargaros el código de los ejemplos. Para poder ver el ejemplo tenéis que descargar el editor y ponerlo dentro de una carpeta llamada fckeditor.

Primer Ejemplo de FCKeditor

P.D.: Esta entrada me ha costado un poco, ha habido algunos problemas con el ejemplo, de modo que puede haber problemas al hacer que funcione el ejemplo. Si tenéis alguna duda podéis preguntar sin problema en los comentarios.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , , ,