lunes, 6 de octubre de 2014

Conexion a MySQL e Historia de PHP

Conexión a MySQL

Este sencillo ejemplo muestra cómo conectarse, ejecutar una consulta, imprimir las filas resultantes y desconectarse de una base de datos MySQL.

<?php

// Conexión, selección de base de datos

$enlace = mysql_connect('host', 'usuario', 'clave') or die('No pudo conectarse : ' .
mysql_error());

echo 'Conexión exitosa';

mysql_select_db('base_datos')  or die('No pudo seleccionarse la BD.'); Laboratorio de Sistemas
Departamento de Ingeniería en Sistemas de Información Universidad Tecnológica Nacional – 

Facultad Regional Córdoba

// Realizar una consulta SQL

$consulta = 'SELECT * FROM mi_tabla';
$resultado = mysql_query($consulta)  or die('La consulta falló: ' . mysql_error());

// Impresión de resultados

while ($registro = mysql_fetch_array($resultado, MYSQL_ASSOC)) 
{
 foreach ($registro as $valor_col)
 {
 echo $valor_col." - ";
 }
 echo "<br/>";
}
// Liberar conjunto de resultados
mysql_free_result($resultado);
// Cerrar la conexion
mysql_close($enlace);

?>


HISTORIA

Fue originalmente diseñado en Perl, con base en la escritura de un grupo de CGI binarios escritos en el lenguaje C por el programador danés-canadiense Rasmus Lerdorf en el año 1994 para mostrar su currículum vítae y guardar ciertos datos, como la cantidad de tráfico que su página web recibía. El 8 de junio de 1995 fue publicado "Personal Home Page Tools" después de que Lerdorf lo combinara con su propio Form Interpreter para crear PHP/FI.

Dos programadores israelíes del Technion, Zeev Suraski y Andi Gutmans, reescribieron el analizador sintáctico (parser en inglés) en el año 1997 y crearon la base del PHP3, cambiando el nombre del lenguaje por PHP: Hypertext Preprocessor. Inmediatamente comenzaron experimentaciones públicas de PHP3 y fue publicado oficialmente en junio de 1998. Para 1999, Suraski y Gutmans reescribieron el código de PHP, produciendo lo que hoy se conoce como motor Zend. También fundaron Zend Technologies en Ramat Gan, Israel.

En mayo de 2000 PHP 4 fue lanzado bajo el poder del motor Zend 1.0. El día 13 de julio de 2007 se anunció la suspensión del soporte y desarrollo de la versión 4 de PHP, a pesar de lo anunciado se ha liberado una nueva versión con mejoras de seguridad, la 4.4.8 publicada el 13 de enero del 2008 y posteriormente la versión 4.4.9 publicada el 7 de agosto de 2008. Según esta noticia se le dio soporte a fallos críticos hasta el 9 de agosto de 2008.

El 13 de julio de 2004, fue lanzado PHP 5, utilizando el motor Zend Engine 2.0 (o Zend Engine  Incluye todas las ventajas que provee el nuevo Zend Engine 2 como:

·  Mejor soporte para la programación orientada a objetos, que en versiones anteriores era     extremadamente rudimentario.
·         Mejoras de rendimiento.
·         Mejor soporte para MySQL con extensión completamente reescrita.
·         Mejor soporte a XML (XPath, DOM, etc.).
·         Soporte nativo para SQLite.
·         Soporte integrado para SOAP.
·         Iteradores de datos.
·         Manejo de excepciones.
·         Mejoras con la implementación con Oracle.

Variables PHP

Variables

Las variables son definidas anteponiendo el símbolo dólar ($) al nombre de la variable que estamos definiendo. Dependiendo de la información que contenga, una variable puede ser considerada de uno u otro tipo:

Variables numéricas

Enteros $entero = 2002; Números sin decimales
Real $real = 3.14159; Números con o sin decimal

Variables alfanuméricas

Almacenan textos compuestos de números y/o cifras
$cadena = "Hola amigo";

Arrays

Almacenan series de informaciones numéricas y/o
alfanuméricas
$sentido[1] = "ver";
$sentido[2] = "tocar";
$sentido[3] = "oir";
$sentido[4] = "gusto";

$sentido[5] = "oler";

Objetos

Se trata de conjuntos de variables y funciones asociadas. Presentan una complejidad mayor que las variables vistas hasta ahora pero su utilidad es más que interesante. A diferencia de otros lenguajes, PHP posee una granflexibilidad a la hora de operar con variables. En efecto, cuando definimos una variable asignándole un valor, el ordenador le atribuye un tipo. Si por ejemplo definimos una variable entre comillas, la variable será considerada de

Tipo cadena:

$variable = "5"; //esto es una cadena

Sin embargo si pedimos en nuestro script realizar una operación matemática con esta variable, no obtendremos un mensaje de error sino que la variable cadena será asimilada a numérica:

<?php

$cadena = "5"; //esto es una cadena

$entero = 3; //esto es un entero

echo $cadena + $entero

?>

Este script dará como resultado "8". La variable cadena ha sido asimilada en entero (aunque su tipo sigue siendo cadena) para poder realizar la operación matemática. Del mismo modo, podemos operar entre variables tipo entero y real. No debemos preocuparnos de nada, PHP se encarga durante la ejecución de interpretar el tipo de variable necesario para el buen funcionamiento del programa. Sin embargo, en contraste, hay que tener cuidado en no cambiar mayúsculas por minúsculas ya que, en este sentido, PHP es sensible. Conviene por lo tanto trabajar ya sea siempre en mayúsculas o siempre en minúsculas para evitar este tipo de malentendidos a veces muy difíciles de localizar.

Variables asignadas por referencia

En PHP también podemos asignar variables por referencia. En ese caso no se les asigna un valor, sino otra variable, de tal modo que las dos variables comparten espacio en memoria para el mismo dato. La notación para asignar por referencia es colocar un "&" antes del nombre de la variable.

<?php

$foo = 'Bob'; // Asigna el valor 'Bob' a $foo
$bar = &$foo; // Referencia $foo vía $bar.
$bar = "Mi nombre es $bar"; // Modifica $bar...
echo $foo; // $foo también se modifica.
echo $bar;

?>

Esto dará como resultado la visualización dos veces del string "Mi nombre es Bob". Algo como:

Mi nombre es BobMi nombre es Bob

Requrimientos de software y hardware PHP

Requerimientos de Software y Hardware

Los requerimientos de Hardware son mínimos, prácticamente en cualquier PC que pueda correr un sistema operativo (en particular linux) podremos tener un servidor web con PHP instalado. En cuanto a los requerimientos de software podemos nombrar los siguientes como una alternativa mínima como para empezar con la programación en el lenguaje PHP.

• Servidor Web, recomendamos Apache (www.apache.org)

• PHP (www.php.net)

• Editor, puede ser un editor de texto simple o algo más complejo y especializado para el lenguaje.

• Base de Datos, es opcional. Recomendamos MySQL


 El Lenguaje de PHP

 PHP se escribe dentro de la propia página web, junto con el código HTML y, como para cualquier otro tipo de lenguaje incluido en un código HTML, en PHP necesitamos especificar cuáles son las partes constitutivas del código escritas en este lenguaje. Esto se hace, como en otros casos, delimitando nuestro código por etiquetas. Podemos utilizar distintos modelos de etiquetas en función de nuestras preferencias y costumbres. Hay que tener sin embargo en cuenta que no necesariamente todas están configuradas inicialmente y que otras, como es el caso de <% y %> sólo están disponibles a partir de una determinada versión (3.0.4.).

 Estos modos de abrir y cerrar las etiquetas son:
<?          y        ?>
<%        y       %>
<?php   y         ?>
<script language="php">       y      </script>


Este último modo está principalmente aconsejado a aquellos que tengan el valor de trabajar con Front Page ya que, usando cualquier otro tipo de etiqueta, corremos el riesgo de que la aplicación nos la borre sin más debido a que se trata de un código incomprensible para ella. El modo de funcionamiento de una página PHP, a grandes rasgos, no difiere del clásico para una página dinámica del lado servidor: El servidor va a reconocer la extensión correspondiente a la página PHP (phtml, php, php4,...) y antes de enviarla al navegador va a encargarse de interpretar y ejecutar todo aquello que se encuentre entre las etiquetas correspondientes al lenguaje PHP.

El resto, lo enviara sin más ya que, asumirá que se trata de código HTML absolutamente comprensible por el navegador. Otra característica general de los scripts en PHP es la forma de separar las distintas instrucciones. Para hacerlo, hay que acabar cada instrucción con un punto y coma ";". Para la última expresión, la que va antes del cierre de etiqueta, este formalismo no es necesario. Incluimos también en este capítulo la sintaxis de comentarios. Un comentario, para aquellos que no lo sepan, es una frase o palabra que nosotros incluimos en el código para comprenderlo más fácilmente al volverlo a leer un tiempo después y que, por supuesto, el ordenador tiene que ignorar ya que no va dirigido a él sino a nosotros mismos. Los comentarios tienen una gran utilidad ya que es muy fácil olvidarse del funcionamiento de un script programado un tiempo atrás y resulta muy útil si queremos hacer rápidamente comprensible nuestro código a otra persona.

Pues bien, la forma de incluir estos comentarios esvariable dependiendo si queremos escribir una línea o más. Veamos esto con un primer ejemplo de script:

<?php
$mensaje = "Tengo hambre!!"; //Comentario de una línea
echo $mensaje; #Este comentario también es de una línea
/*En este caso
Mi comentario ocupa varias líneas, lo ves? */ ?>

Si usamos doble barra (//) o el símbolo # podemos introducir comentarios de una línea. Mediante /* y */

Creamos comentarios multilínea. Por supuesto, nada nos impide de usar estos últimos en una sola línea. No se preocupen si no comprenden el texto entre las etiquetas, es sólo a modo de ejemplo. Adelantamos que las variables en PHP se definen anteponiendo un símbolo de dólar ($) y que la instrucción “echo” sirve para sacar en pantalla lo que hay escrito a continuación.

Recordamos que todo el texto insertado en forma de comentario es completamente ignorado por el servidor. Resulta importante acostumbrarse a dejar comentarios, es algo que se agradece con el tiempo.


Ventajas y características PHP

Ventajas adicionales de PHP

PHP corre en (casi) cualquier plataforma utilizando el mismo código fuente, pudiendo ser compilado y ejecutado en algo así como 25 plataformas, incluyendo diferentes versiones de Unix, Windows (95,98,NT,ME,2000,XP,bla,bla,bla) y Macs. Como en todos los sistemas se utiliza el mismo código base, los scripts pueden ser ejecutados de manera independiente al OS.

La sintaxis de PHP es similar a la del C, por esto cualquiera con experiencia en lenguajes del estilo C podrá entender rápidamente PHP. Entre los lenguajes del tipo C incluimos al Java y Javascript, de hecho mucha de la funcionalidad del PHP se la debe al C en funciones como fread() o srtlen(), así que muchos programadores se sentirán como en casa.

PHP es completamente expandible. Está compuesto de un sistema principal (escrito por Zend), un conjunto de módulos y una variedad de extensiones de código.

Muchas interfaces distintas para cada tipo de servidor. PHP actualmente se puede ejecutar bajo Apache, IIS, AOLServer, Roxen yTHTTPD. Otra alternativa es configurarlo como modulo CGI.
Puede interactuar con muchos motores de bases de datos tales como MySQL, MS SQL, Oracle, Informix, PostgreSQL, y otros muchos. Siempre podrás disponer de ODBC para situaciones que lo requieran.

Una gran variedad de módulos cuando un programador PHP necesite una interfase para una librería en particular, fácilmente podrá crear una API para esta. Algunas de las que ya vienen implementadas permiten manejo de gráficos, archivos PDF, Flash, Cybercash, calendarios, XML, IMAP, POP, etc.
Rapidez. PHP generalmente es utilizado como modulo de Apache, lo que lo hace extremadamente veloz. Esta completamente escrito en C, así que se ejecuta rápidamente utilizando poca memoria.

PHP es Open Source, lo cual significa que el usuario no depende de una compañía específica para arreglar cosas que no funcionan, además no estás forzado a pagar actualizaciones anuales para tener una versión que funcione. Muchos de nosotros que hemos esperado que Allaire arregle algo apreciamos esto.


Cuando debes utilizar PHP y cuando debes utilizar otro lenguaje

Si estas desarrollando bajo una plataforma UNIX o Linux, debes elegir entre Perl y PHP, ambos excelentes. Para mucha gente PHP es más simple a la hora de escribir scripts, haciéndolo más productivo en proyectos no tan grandes. ¡Claro que no existe razón para no tener PHP y Perl al mismo tiempo!
En ambientes Windows compite muy de cerca con ASP y Cold Fusion, aquí la elección se basa en asuntos un poco más técnicos y en la política que desee utilizarse para el sitio. ASP junto a IIS es probablemente más estable que PHP con IIS. Pero en términos puramente técnicos, PHP bajo Windows NT es mucho más estable que los otros dos (además de ser más rápido y utilizar menos recursos). De cualquier manera ASP ofrece una mejor integración con este ambiente sobre todo si se desea utilizar COM.

Características de PHP

• La principal característica es que se basa en ser un lenguaje multiplataforma.

• Capacidad de conexión con la mayoría de los manejadores de base de datos que se utilizan en la actualidad.

• Leer y manipular datos desde diversas fuentes, incluyendo datos que pueden ingresar los usuarios desde formularios HTML

• Capacidad de expandir su potencial utilizando la enorme cantidad de módulos (llamados ext's o extensiones).

• Es Libre, por lo que se presenta como una alternativa de fácil acceso para todos.

• Permite las técnicas de Programación Orientada a Objetos. Los principales usos del PHP son los siguientes:

• Programación de páginas web dinámicas, habitualmente en combinación con el motor de base datos MySQL, aunque cuenta con soporte nativo para otros motores, incluyendo el estándar ODBC, lo que amplía en gran medida sus posibilidades de conexión.

• Programación en consola, al estilo de Perl, en Linux, Windows y Macintosh.

• Creación de aplicaciones gráficas independientes del navegador, por medio de la combinación de PHP y GTK (GIMP Tool Kit), que permite desarrollar aplicaciones de escritorio tanto para los sistemas operativos basados en Unix, como para Windows y Mac OS X.

Que es PHP

Que es PHP.

PHP es un lenguaje de programación de uso general de código del lado del servidor originalmente diseñado para el desarrollo web de contenido dinámico. Fue uno de los primeros lenguajes de programación del lado del servidor que se podían incorporar directamente en el documento HTML en lugar de llamar a un archivo externo que procese los datos. El código es interpretado por un servidor web con un módulo de procesador de PHP que genera la página Web resultante. PHP ha evolucionado por lo que ahora incluye también una interfaz de línea de comando que puede ser usada en aplicaciones gráficas independientes. Puede ser usado en la mayoría de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ningún costo.

Se considera uno de los lenguajes más flexibles, potentes y de alto rendimiento conocidos hasta el día de hoy. Lo que ha atraído el interés de múltiples sitios con gran demanda de tráfico como Facebook, para optar por PHP como tecnología de servidor.


Fue creado originalmente por Rasmus Lerdorf en 1995. Actualmente el lenguaje sigue siendo desarrollado con nuevas funciones por el grupo PHP. Este lenguaje forma parte del software libre publicado bajo la licencia PHP, que es incompatible con la Licencia Pública General de GNU debido a las restricciones del uso del término PHP.

Vicion General.

PHP puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. El lenguaje PHP se encuentra instalado en más de 20 millones de sitios web y en un millón de servidores. El enorme número de sitios en PHP ha visto reducida su cantidad a favor de otros nuevos lenguajes no tan poderosos desde agosto de 2005. El sitio web de Wikipedia está desarrollado en PHP.5 Es también el módulo Apache más popular entre las computadoras que utilizan Apache como servidor web.

El gran parecido que posee PHP con los lenguajes más comunes de programación estructurada, como C y Perl, permiten a la mayoría de los programadores crear aplicaciones complejas con una curva de aprendizaje muy corta. También les permite involucrarse con aplicaciones de contenido dinámico sin tener que aprender todo un nuevo grupo de funciones.
Cuando el cliente hace una petición al servidor para que le envíe una página web, el servidor ejecuta el intérprete de PHP. Éste procesa el script solicitado que generará el contenido de manera dinámica (por ejemplo obteniendo información de una base de datos). El resultado es enviado por el intérprete al servidor, quien a su vez se lo envía al cliente.


Por que utilizar PHP

Las razones de utilizar este lenguaje se deben a su poder y sencilles. PHP bien es un software libre, no es necesario pagar para poder utilizarlo(como lo es con asp) y una de sus grandes cualidades es su versatilidad al momento de escribir codigo, su sencillez en la sintaxis, e inclusive su seguridad.

Por lo tanto las razones:

Costo:

Primero que nada es gratuito, y con documentación muy amplia en Internet, por lo general no tardamos en encontrar tutoriales  y guías gratuitas acerca de como utilizar este lenguaje.
Sencillez y Versatilidad:

PHP es un lenguaje de una sintaxis muy simple, y facil de aprender, ademas posee una gran variedad de funciones que pueden ser utilizadas para mejorar el rendimiento de nuestros programas.

Seguridad:

PHP es un lenguaje de uso muy comun en la web, ademas de ser libre, esto significa que una inmensa comunidad de programadores que utilizan este lenguaje estan cooperando para la mejora del motor de PHP, por lo cual es cada vez mas seguro y estable a medida que pasa el tiempo y aumenta su version, otra ventaja es que en internet se pueden encontrar muchos tips para evitar errores que puedan convertirse en bugs peligrosos en nuestros sitios web, y con ello puedes aprender mas facilmente a evitar que exploiteen tus scripts php.


Hacia donde va PHP.

PHP es un lenguaje plagado de características propias del lenguaje humano: ambigüedades, comportamientos no definidos o no esperables, funcionalidades marginales, etc. Desde la sintaxis de llamada de métodos, el carácter de separación de módulo (\), como muchos otros problemas de eficiencia y de nomenclatura de funciones.