mysql

Conexion CSharp [C#] a MySQL

En nuestra estimada carrera que llevamos en la UPAO tenemos el curso de Programación de Aplicaciones de Gestión, más conocido como P.A.G en el cual se realizan proyectos muy interesante con Visual Studio.net [algunos VB, otros C#] donde al final dichos proyectos, deben estar implementados con conexión a base de datos y manipulación de éstos, en aquella ocasión nos enseñaron a utilizar SQL Server 2008. En la carrera, comenzamos a programar con Java, lenguaje que nos acompaña durante los 3 primeros ciclos, en 4to ciclo aprendemos Base de datos con Oracle. Me gustaría hacer un paréntesis, y mostrar que también es posible utilizar MySQL vinculado con el poder de C# en Visual Studio.net, así que sin dar más vueltas veamos como hay que hacer!

Seguir leyendo …

Instalar XAMPP en Ubuntu

Desde hace algún tiempito corto acá he retomado el uso del sistema operativo Ubuntu, en su versión 10.10, y una de las cosas que no pude migrar así de facil fue mi trabajo con el PHP que siempre en Windows había realizado con el servidor típico WampServer, el cual como ya muchos sabrán, lo que hacía era juntar el servidor Apache y el servidor MySQL en un fácil instalador que no pasaba los 20MB, por lo que me evitaba de estar bajando paquetes y así. El problema es que sólo existe una versión para Windows y al momento de estar operando en Ubuntu necesitaba algo que al menos se asemeje a eso. Obviamente no iba a instalar Apache y MySQL por separado y andar levantando servicios y eso , que más que desconocimiento, resulta un fastidio. Para esos casos, me vino como anillo al dedo XAMPP.

¿Qué es XAMPP? … Pues si vamos a Wikipedia encontraremos esto

XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor Web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. El programa está liberado bajo la licencia GNU y actúa como un servidor Web libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente XAMPP esta disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X.

Y bueno, cabe resaltar que es un proyecto de Apache Friends, subido a Sourceforge y que cada cierto tiempo es actualizado a una nueva versión (contra la versión de WampServer que se actualiza cada ciertos meses, XAMPP se actualiza mas rápido).

Entre otras características que me gusto de XAMPP es la posibilidad de montar un servidor con SSL y el uso de Perl (Que yo de Perl no se nada, pero quien te dice si no aprendo de la manera como aprendí PHP, instalandome un servidor y probando) un poco más que ofrecer que el WampServer. Pero no os preocupeis, que también existe una versión para Windows mucho mas intuitiva y con más posibilidades que muchos otros servidores.

Cómo Instalo XAMPP en mi PC con Ubuntu?.

Bueno, primero que nada hay que descargarse el paquete, actualmente la versión estable es la 1.7.3a, pero por si las moscas yo colocaré aquí el link de descarga general, para que puedan descargar la última versión en cualquier momento que vean este post.

XAMPP, proyecto en SourceForge -> http://sourceforge.net/projects/xampp/

Como podrán ver, el archivo principal a descargar, es un archivo tar.gz el cual es un archivo de compresión clásica en UNIX, vamos que una versión clásica equivalente al RAR que usamos en Windows, pero entonces, como lo instalo desde un archivo compreso que sólamente tiene archivos… pues aquí viene la parte buena.

Primero, tienes que descomprimir el archivo y copiarlo automáticamente a la carpeta /opt del sistema. Para eso simplemente lo que haremos es escribir esto en la terminal (recomiendo hacerlo con permisos de root para evitar problemas):

tar zxvf /<ruta-donde-esta-ubicado-el-archivo>/xampp-linux-x.x.x.tar.gz -C/opt

Donde x.x.x es la versión actual del XAMPP. Con esa línea lo que haces es descomprimir automáticamente el archivo en dicha carpeta y prácticamente ya tendrías instalado XAMPP en tu sistema. Si, así de fácil.

Ahora, como ustedes sabrán, esto es un servicio que no siempre queremos que esté activo, porque consumirá recursos en el sistema y queremos que actue como un programa que se active cuando querramos y desactive cuando terminemos de trabajar. Pues bien, el proceso de activación y desactivación de XAMPP server es sencillo:

Para activarlo. Deben ejecutar esta linea en terminal

/opt/lampp/lampp start

Entonces nos deberá salir algo como esto:

Starting XAMPP for Linux x.x.x…
XAMPP: Starting Apache with SSL (and PHP5)…
XAMPP: Starting MySQL…
XAMPP: Starting ProFTPD…
XAMPP for Linux started.

Para desactivarlo, es el mismo proceso, pero escribiendo esto:

/opt/lampp/lampp stop

Y entonces el sistema detendrá el servicio

Stopping XAMPP for Linux x.x.x…
XAMPP: Stopping Apache with SSL…
XAMPP: Stopping MySQL…
XAMPP: Stopping ProFTPD…
XAMPP stopped.

Bueno, mientras tengas activado tu servidor XAMPP puedes acceder a él mediante el link clásico http://localhost/ automáticamente y subir tus proyectos mediante el FTP con el usuario “nobody” en localhost, además de usar el phpmyadmin con http://localhost/phpmyadmin

Adicionalmente recomiendo agregarle la seguridad respectiva al servidor, entonces tendrás passwords en todos tus servicios y tus conexiones serán seguras (ya que, en un entorno de red por ejemplo, cualquiera podría entrar mediante tu IP a tus servicios web). Deberán escribir esto en la terminal:

/opt/lampp/lampp security

Automáticamente en la terminal se iniciará un Wizard para colocar la seguridad respectiva en todos los servicios de tu instalación de XAMPP, como los passwords en tu usuario de MySQL, de FTP, y de acceso a la web.

Pueden encontrar información al detalle acerca de XAMPP, sus comandos, sus archivos (osea, los que podreis editar a tu conveniencia para, por ejemplo ampliar el límite de subida de archivo en tamaño) entre otras especificaciones en el siguiente link:

http://www.apachefriends.org/en/xampp-linux.html

Espero este sea el comienzo de una serie de post dedicada al servidor XAMPP y como operar y hacer más facil la vida de quienes llegan a estos posts, si hay alguna duda, quizás pueden comentarla acá, podremos debatir y aportar, ya que yo también estoy empezando a usarlo.

Saludos!

Creando un sistema de blogs [PHP] [II]

Había comentado hace tiempo que estaba haciendo un sistema de blogs a punta de PHP, MySQL y full programación estructurada debido a querer investigar más acerca de este lenguaje, y pues como todo en mí, se salió de control al punto de tener mi propio blog personal -tan personal hasta la última línea de código- y bueno, quisiera compartir el código para quien lo necesite , lo quiera mejorar , lo quiera usar, lo quiera criticar, o que se yo; aclarando el que soy algo desordenado y quizás falta documentar bastante. La verdad programé bajo mi propio entendimiento y bueno, funciona no?… en algún futuro lo adecue a un formalismo quizás (ya saben, programación orientada a objetos, documentación, comentarios por doquier, tabulación de código , etc) pero por ahora quiero darme un descanso y de paso que lo uso a modo personal.

El blog funciona ya en perfecto estado, es decir, no hay huecos ni links rotos, ni formularios no validados. Creo que faltan dos o tres funcionalidades estando uno logueado en panel de control, pero son cosas que no se notan a “nivel cliente” donde todo parece funcional.

Seguir leyendo …

Creando un sistema de blog propio [PHP]

Mucha gente dice a veces… para qué re-inventar la rueda?…y esto con referente a modelos estructurados de programación en los que siempre hay algunos aventureros inventando cosas sólo para que se les felicite o reconozca… bueno, esta vez yo tengo una razón un poco más de peso para re-inventar la rueda: INVESTIGACIÓN … (aunque claro, a veces hay gente hincha que exagera con eso y en vez de investigar lo que quieren es crear algo para intentar hacer competencia con lo ya existente… ¬¬, en ese caso, prefiero usar librerías conocidas), y bueno, esta vez quiero compartir en este post un proyecto que me mantuvo entretenido en lo que no he tenido internet el pasado mes y que aparte sirvió de buen “desestresador”, “desaburridor” y del cual no podía decir que estaba perdiendo el tiempo; un sistema de blog a partir de mis conocimientos básicos de PHP y MySQL.

En verdad, no es la gran cosa, no voy a vender gatos por liebres, ni decir que usé algo fuera de lo común que va a pegar en el mundo de la programación, y que muy aparte que exista WordPress, que lo recomiendo, esto quise compartirlo para que no se pierda en la bastedad del mundo de los 0 y 1, porque a fin de cuentas, todo el mundo puede tener un blog sin más personalización que hacer un par de clics (como en Blogger) o hacer algunas que otras modificaciones con etiquetas ya existentes a nivel código (WordPress) y bueno, después de probar tal o cual sistema, llegue a la conclusión -personal- de que no hay blog más personal que el que hecho por ti mismo desde 0 (esto es debatible, sólo es mi punto de vista personal ojo). Aunque bueno, es una experiencia rara XD… para proyectos serios obviamente usaría WordPress… pero vamos a ver qué tal va esto de crear tu propio sistema de blog!

Me di cuenta que, los blogs tienen cosas en común, y bueno, eso es obvio, el hecho está en que puedes crear un blog básico con unos cuantos archivos y algunas tablitas en MySQL  (que ni si quiera me preocupe en vincular con PK, FK, Joins, vistas, etc y eso porque no me gusta mucho esas cosas), que cumplan determinadas funciones básicas como un index.php, un archivo que muestre los post y comentarios (sí!… un solo archivo para mostrar de forma individual todos los post que tengas) y de preferencia un archivo donde almacenes funciones globales que crees que vas a utilizar en más de un archivo (en todo caso esto modulariza un poco el sistema) y ya el resto lo dejo a tu imaginación.

Pero bueno, vamos con lo técnico del sistema que hice, quizás a alguien le pueda funcionar…

Nota: Los códigos que veras son un alcance del sistema en sí, no es un tuto general de como hacer un blog con dos o tres archivos, sino pequeños avances de como es que hice esto en específico caso.

Seguir leyendo …