PHP & SQL Anywhere en Linux
Hoy les voy a platicar como conectarnos a SQL Anywhere usando PHP. Esta guia es para que no se quemen el cerebro como yo buscando en absolutamente todos los foros de internet.
Requerimientos
- PHP 5.2 o superior
- SQL Anywhere Studio Developer Edition
- La base de datos (el archivo .db de sql anywhere)
Instalacion del SQL Anywhere Studio
El proceso de instalacion es bastante simple. Hay que poner la clave de activacion que nos mandan al email cuando nos registramos en la pagina, y seleccionar el directorio donde queremos tener el sql anywhere. Yo elegi /opt/sqlanywhere10
Una vez que instalamos, hay que modificar las variables de entorno (en ubuntu estan en el archivo /etc/environment) y agregarle la siguiente linea:
LD_LIBRARY_PATH="/opt/sqlanywhere10/jre150/lib/i386/client:/opt/sqlanywhere10/jre150/lib/i386:/opt/sqlanywhere10/jre150/lib/i386/native_threads:/opt/sqlanywhere10/lib32"
Reiniciamos la maquina, y listo.
Instalacion del modulo de SQL Anywhere para PHP
Tendremos que hacer un link simbolico hacia el modulo de PHP dentro del directorio de instalacion
nibblesmx@lappy:/$ sudo ln -sf /opt/sqlanywhere10/lib32/php-5.2.0_sqlanywhere10.so /usr/lib/php5/20060613+lfs/php5-sqlanywhere.so
Nota: Es importante el nombre que le damos a el link simbolico dentro de la carpeta de las librerias de PHP, porque lo utilizaremos despues
Y despues reiniciamos el servicio de Apache
nibblesmx@lappy:/$ sudo /etc/init.d/apache2 restart
Con esto ya tendremos soporte para las funciones de sqlanywhere desde PHP.
Arrancando la base de datos
Ya que tenemos todo lo necesario para trabajar, solo nos falta 1 cosa. Iniciar la base de datos, para poder hacer la conexion.
Esto es la parte facil, solo hay que irnos al directorio de binarios del SQL Anywhere Studio, y arrancar la base de datos con el siguiente comando:
nibblesmx@lappy:/$ cd /opt/sqlanywhere10/bin32 nibblesmx@lappy:/opt/sqlanywhere10/bin32$ ./dbeng10 /home/nibblesmx/marisol.db
Despues nos preguntara si estamos de acuerdo con la licencia. Si contestamos que si, la base de datos arrancara.
Conectandonos desde PHP
Ya que todo esta listo, nos queda la ultima parte. La de la codificacion. El codigo queda algo asi:
<?php
dl('php5-sqlanywhere.so');
$cnx = sqlanywhere_connect("UID=DBA;PWD=SQL");
$res = sqlanywhere_query($cnx, "SELECT * FROM tabla");
while( $datos = sqlanywhere_fetch_array($res) ){
print_r($datos);
}
sqlanywhere_free_result($res);
sqlanywhere_close($cnx);
?>
La primera linea, sirve para cargar dinamicamente un modulo de PHP. Recuerdan el nombre del enlace simbolico en la carpeta de librerias de PHP? Bueno, ese es el que tenemos que escibir. Todas las funciones, son muy parecidas a todas las de manejo de bases de datos. Para una referencia completa, pueden dar click aqui.
Suerte, y espero que no batallen tanto como yo :S
About this entry
You’re currently reading “PHP & SQL Anywhere en Linux,” an entry on Will Code for Food
- Published:
- 12.16.07 / 3pm
- Category:
- General
2 Comments
Jump to comment form | comments rss [?] | trackback uri [?]