Software">
Nothing Special   »   [go: up one dir, main page]

PHP y SQL Puntos

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 24

Que es php

PHP es un lenguaje de código abierto muy popular, adecuado para desarrollo web y que puede ser
incrustado en HTML. Es popular porque un gran número de páginas y portales web están creadas
con PHP. Código abierto significa que es de uso libre y gratuito para todos los programadores que
quieran usarlo. Incrustado en HTML significa que en un mismo archivo vamos a poder combinar
código PHP con código HTML

PHP se utiliza para generar páginas web dinámicas. Recordar que llamamos página estática a
aquella cuyos contenidos permanecen siempre igual, mientras que llamamos páginas dinámicas a
aquellas cuyo contenido no es el mismo siempre. Por ejemplo, los contenidos pueden cambiar en
base a los cambios que haya en una base de datos, de búsquedas o aportaciones de los usuarios,
etc.

¿Cuáles son las principales características de PHP?

Una de las característica más importantes de PHP es que puede incrustarse directamente en un
código HTML. Además, el código se ejecuta en el servidor web y no en el equipo del usuario, por lo
que puede ocultarse. Dicho de otra manera, pueden ver el resultado de la ejecución del código
pero no pueden ver el script.

Entre sus demás ventajas encontramos que:

 Es un código bastante fácil de aprender para principiantes


 Tiene funcionalidades avanzadas para desarrollo web
 Funciona en la mayoría de los servidores web actuales
 Admite programación por procedimiento y orientada a objetos
 Soporta la mayoría de las bases de datos
 Puede intercambiar datos con el resto de los lenguajes de programación web
 Cuenta con gran variedad de extensiones que lo convierten en uno de los lenguajes más
versátiles e interconectados
 Al ser de código abierto y contar con una comunidad entusiasta, sigue en
perfeccionamiento constante.
 Es la mejor opción si se necesita un sitio optimizado para SEO
como funciona PHP.

 PHP se instala en el servidor remoto.


 El usuario manda una petición de página web.
 Si hay código PHP en la página.
 PHP analiza la petición y genera una página web dinámica dependiendo de la petición que
haya solicitado el usuario.

Como vemos en la imagen el usuario hace una petición(Una petición es entrar en una web, enviar
un formualrio, rellenar campos dinámicos, introducir algún dato, hacer clic en un link, etc), PHP
interpreta y le da una respuesta en HTML.

Lo mejor de PHP es que es lenguaje, que al ser instalado en el servidor, el usuario no puede
modificar en su ordenador y gracias a esto podemos hacer aplicaciones más seguras.

Sintaxis

El modo de funcionamiento de una página PHP, a grandes rasgos, no difiere del clásico para una
página dinámica de lado servidor: El servidor va a reconocer la extensión correspondiente a la
página PHP 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.
1. Etiquetas PHP

Cuando PHP analiza un archivo busca etiquetas de apertura y cierre, que normalmente son <?
php** y ?>, e indican a PHP cuando empezar y terminar de interpretar código. PHP también
permite la etiqueta de apertura `<?, pero se desaconseja.

Otra forma de incluir código es con el elemento script: .

Si un archivo es enteramente en PHP, es preferible omitir la etiqueta de cierre al final del archivo ?
>.

2. Escape de HTML

Cualquier código fuera de las etiquetas de apertura y cierre es ignorado por el intérprete de PHP.
Esto permite embeber PHP en HTML:

Cuando se hace escape en medio de una condición, el intérprete tendrá en cuenta el código HTML
sólo si ésta se cumple, de lo contrario saltará el contenido:
Para imprimir textos largos este método es más eficiente que enviar el texto a través de echo o
print.

3. Instrucción de separación

Como en C o en Perl, PHP requiere que cada instrucción se termine con punto y coma ";" al final
de cada sentencia. La etiqueta de cierre de un bloque de código PHP automáticamente implica el
punto y coma, por lo que no es necesario incluirlo al final:
<?php echo 'Esto es una prueba' ?>

A veces es recomendable este método para evitar espacios en blanco al final, especialmente
cuando se usan include, require o output buffering.

4. Comentarios

El estilo de comentarios en PHP es como el de C, C++ o Perl:

Los comentarios de varias líneas finalizan con el primer */:

Variables
En PHP las variables se representan con un signo de dólar seguido por el nombre de la variable. El
nombre de la variable es sensible a minúsculas y mayúsculas.

Los nombres de variables siguen las mismas reglas que otras etiquetas en PHP. Un nombre de
variable válido tiene que empezar con una letra o un carácter de subrayado (underscore), seguido
de cualquier número de letras, números y caracteres de subrayado. Como expresión regular se
podría expresar como: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

Nota: $this es una variable especial que no puede ser asignada.

DIFERENCIAS ENTRE LOS OPERADORES DE ASIGNACIÓN E IGUALDAD.

ASIGNACIÓN (=)

El operador de asignación es "=". Se podría pensar que es como un "igual a". No lo es. El operador
igual en programación no tiene el mismo sentido que en matemáticas. En programación, significa
que el valor de la expresión de la derecha se establece en el operando de la izquierda.

Fíjate en este ejemplo y en los comentarios.

OPERADOR DE IGUALDAD (==)


El operador comparador de igualdad es ==. Como su propio nombre indica, sirve para comparar
dos valores o variables y no para asignar valores. Este operador devuelve el resultado de la
operación lógica de 'igual a' tal y como podemos apreciar en el siguiente ejemplo.

Fíjate en este ejemplo y en los comentarios.

Tipos de datos
En PHP el tipo de datos de una variable no está definido por el programador. PHP decide el tipo de
datos de las variables después de interpretar la página web. El tipo de datos básicos incluidos en
php son variables, que no son más que identificadores para la ubicación de memoria para
almacenar datos.

Qué son operadores

Un operador nos permite realizar una operación entre uno o más valores. El operador toma esos
valores de entrada y los relaciona entre si, realizando una operación y aplicando otro valor como
resultado. Para entendernos, operadores son los símbolos que usamos en las matemáticas para
expresar cuentas con números, como los símbolos que nos indican ciertas operaciones: suma,
resta, multiplicación, división...

La precedencia de un operador indica qué tan "estrechamente" se unen dos expresiones juntas.
Por ejemplo, en la expresión 1 + 5 * 3 , la respuesta es 16 y no 18 porque el operador de
multiplicación ("*") tiene una precedencia mayor que el operador de adición ("+"). Los paréntesis
pueden ser usados para forzar la precedencia, si es necesario. Por ejemplo: (1 + 5) * 3 se evalúa
como 18.

Cuando tienen la misma precedencia, su asociatividad decide cómo ordenar los operadores. Por
ejemplo el operador suma + tiene asociatividad izquierda, por lo que la operación 1 + 2 + 3 sumará
primero 1 y 2, y después 3 => (1 + 2) + 3. Por el contrario, el operador = tiene asociatividad
derecha, por lo que $x = $y = $z se agrupa de forma $x = ($y = $z).

Los operadores de misma precedencia que no son asociativos no pueden usarse juntos, esto: 1 < 2
> 1 es incorrecto.
Operadores ordenados por precedencia

Operadores aritméticos en PHP


Operadores de asignación

Existen operadores básicos y combinados:

El operador básico de asignación es "=", que actúa como definidor, no como igualador. El valor de
una expresión de asignación es el valor que se le ha asignado, esto es: "$x = 3" tiene un valor de 3.

En el caso de arrays, se asigna un valor a una clave nombrada mediante el operador "=>".

Los operadores combinados permiten usar un valor en una expresión y establecer su nuevo valor
como resultado de esa expresión:

Hay una excepción a la asignación por valor en PHP, y son los objetos, que se asignan por
referencia. Los objetos se copian mediante la palabra clone.

Asignación por referencia


La asignación por referencia significa que las variables apuntan a los mismos valores, sin hacer
ninguna copia:

Las referencias actúan como cuando se crea un acceso directo o alias de un archivo o carpeta en el
ordenador.

Los operadores bit a bit

permiten la evaluación y manipulación de bits específicos dentro de un integer.

Operadores de comparación
Los operadores de comparación permiten comparar dos valores. Estos valores dependen de los
tipos que tengan asignados. Pueden verse las diferencias comparativas en la tabla de comparación
de tipos.

Operadores de control de errores

Cuando se antepone el símbolo de arroba @ ante cualquier expresión, cualquier mensaje de error
que pueda generar esa expresión será ignorado.

@ Sólo funciona con expresiones (variables, llamadas a funciones o includes, constantes...) no


funciona con definiciones de clases o funciones, condicionales como if o foreach...

Operadores de ejecución
El operador de ejecución `` hace que el contrenido entre las comillas invertidas se ejecute como
comando de consola. Este operador es lo mismo que usar la functión shell_exec().

 Si safe_mode está activado o shell_exec() está desactivado, las comillas no funcionarán.

 Las comillas invertidas no significan nada cuando van dentro de comillas dobles.

Operadores de Incremento/decremento

Los operadores de incremento y decremento sólo afectan a números y strings, sin afectar a arrays,
objects o resources. Decrementar un valor NULL no tiene efecto, pero si se incrementa se obtiene
1. Incrementar o decrementar booleanos no tiene efecto.

Qué es una estructura de control?

En términos simples, una estructura de control le permite controlar el flujo de ejecución de código
en su aplicación. Generalmente, un programa se ejecuta secuencialmente, línea por línea, y una
estructura de control le permite alterar ese flujo, generalmente dependiendo de ciertas
condiciones.

Las estructuras de control son características principales del lenguaje PHP que permiten que su
script responda de manera diferente a diferentes entradas o situaciones. Esto podría permitirle a
su script dar diferentes respuestas basadas en la entrada del usuario, el contenido del archivo u
otros datos.

La estructura if…else permite ejecutar un bloque de instrucciones si la condición es TRUE y otro


bloque de instrucciones si es FALSE. Las estructuras if…else se pueden anidar.
Con este diagrama de ejemplo, podemos ver que primero se comprueba una condición. Si la
condición es verdadera, se ejecutará el código condicional. Lo importante a tener en cuenta aquí
es que la ejecución del código continúa normalmente después de la ejecución del código
condicional.

Las estructuras de control son mayoritariamente condicionales (if, switch, etc) o loops (for,
foreach, etc).
Formularios en php

Los formularios es la única manera de que el usuario nos transmita información, y tenemos una
gran cantidad de posibilidades para recoger: textos, números, archivos, checks…

Este es un formulario HTML. Cuando el usuario rellena este formulario y oprime el botón de envío,
se llama a la página accion.php.

Cuando se llama a la página accion.php. Estamos llamando a un fichero que contiene algo así:

Esto tiene que dar como resultado esto si el usuario introduce esos datos:
GET y POST en PHP

Los métodos HTTP GET y HTTP POST permiten enviar información al servidor, en PHP se administra


mediante los arrays $_GET y $_POST.

Estos métodos son:

HTTP GET

En el método GET, los datos se envían como parámetros de URL que generalmente son cadenas de
pares de nombre y valor separados por ampersands ( &). En general, una URL con datos GET se
verá así:

Las partes en negrita en la URL son los parámetros GET y las partes en cursiva son el valor de esos
parámetros. Se parameter=valuepuede incrustar más de uno en la URL concatenando con
símbolos de unión ( &). Solo se pueden enviar datos de texto simples a través del método GET.

formulario html con el método GET:

-La url que resulta de hacer click en submit es de la forma:

formget.php?nombre=peter&email=peter%40ejemplo.com

-En este caso @ es un carácter especial y se codifica.


HTTP POST

En el método POST, los datos se envían al servidor como un paquete en una comunicación
separada con el script de procesamiento. Los datos enviados a través del método POST no serán
visibles en la URL.

Al igual $_GET, PHP proporciona otra variable superglobal $_POSTpara acceder a toda la
información enviada a través del método de publicación o enviada a través de un formulario HTML
utilizando method="post".

formulario html con el método POST:

Con el método HTTP POST también se codifica la información, pero ésta se envía a través del body
del HTTP Request, por lo que no aparece en la URL.

-El método POST no tiene límite de cantidad de información a enviar.

-La información proporcionada no es visible, por lo que se puede enviar información sensible.

-Se puede usar para enviar texto normal así como datos binarios (archivos, imágenes...).

PHP proporciona el array asociativo $_POST para acceder a la información enviada.


Administración de sesiones con php

Los métodos HTTP GET y POST sirven para enviar datos de una página web a otra. A pesar de que
funcionan bien para hacer clic en enlaces y enviar formularios, son poco prácticos para compartir
datos entre todas las páginas web de una aplicación. Para hacerlo, se necesita alguna otra forma
de datos persistentes, en algún lugar donde se pueda almacenar temporalmente para que los
programas PHP puedan acceder a los datos en cualquier momento desde cualquier página. Aquí es
donde las sesiones ayudan.

La mayoría de las aplicaciones web dinámicas requieren alguna forma de almacenar


temporalmente los datos mientras los visitantes del sitio se abren camino a través de las páginas
web de la aplicación. No se está hablando de almacenamiento a largo plazo de datos, se trata de
almacenamiento a corto plazo de datos que una página web puede almacenar y otra recuperar, o
como pasar información de un usuario autenticado a través del sitio web. Esto ayuda a la
aplicación a rastrear a los visitantes del sitio y lo que están haciendo dentro de la aplicación.

Estructuras de control

Aquí es donde las cookies HTTP entran en juego. Las cookies han sido mal recibidas en el mundo
de la web, principalmente debido a un malentendido sobre cómo las empresas las usan. Una
empresa no puede rastrear todo un historial de navegación mediante cookies, pero puede rastrear
cuáles de sus avisos ha sido visitados. Esto ayuda a los gurús de marketing a orientar la publicidad
en función de los enlaces de empresas que se han visitado previamente.

Las cookies tienen un lugar válido en la línea de ensamblaje de herramientas dinámicas de


aplicaciones web, desempeñando una función crucial para poder realizar un seguimiento de los
visitantes individuales del sitio en una aplicación. Es crucial saber cómo funcionan y cómo usarlas.

las personas que necesitan acceder a los programas que se ejecutan en el sistema primero deben
iniciar sesión en el sistema. Por lo general, esto requiere ingresar algún tipo de información que lo
identifique de manera única, como escribir una identificación de usuario. Cuando el sistema
autentica que eres quien dices ser, te permite acceder al sistema y a tus datos. Este proceso inicia
lo que se llama una sesión.
Las sesiones

son una forma sencilla de almacenar datos para usuarios de manera individual usando un ID de
sesión único. Esto se puede usar para hacer persistente la información de estado entre peticiones
de páginas. Los ID de sesiones normalmente son enviados al navegador mediante cookies de
sesión, y el ID se usa para recuperar los datos de sesión existente. La ausencia de un ID o una
cookie de sesión permite saber a PHP para crear una nueva sesión y generar un nuevo ID de
sesión.

Las sesiones siguen un flujo de trabajo sencillo. Cuando una sesión se inicia, PHP recuperará una
sesión existente usando el ID pasado (normalmente desde una cookie de sesión) o, si no se pasa
una sesión, se creará una sesión nueva. PHP rellenará la variable superglobal $_SESSION con
cualesquiera datos de la sesión iniciada. Cuando PHP se cierra, automáticamente toma el
contenido de la variable superglobal $_SESSION, la serializa, y la envía para almacenarla usando el
gestor de almacenamiento de sesiones.

Acceso a Base de Datos

En lugar de utilizar la línea de comandos de MySQL para introducir instrucciones y visualizar las
salidas, se crean cadenas de consulta que se pasan a MySQL. Cuando MySQL devuelve la
respuesta, tienen una estructura de datos que PHP puede reconocer en lugar de la salida con
formato cuando se trabaja en la línea de comandos de MySQL. Otros comandos PHP pueden
recuperar los datos y darles formato para ser visualizados en una página web.

El proceso para utilizar MySQL con PHP es:

1. Conectar a MySQL.
2. Seleccionr la base de datos a utilizar.
3. Construir una cadena de consulta.
4. Realizar la consulta.
5. Recuperar los resultados y almacenarlas en una página web.
6. Repetir los pasos 3 a 5 hasta que se hayan recuperado todos los datos solicitados.
7. Desconectar de MySQL.

Lo primero y lo más importante es establecer el acceso de forma segura para que la gente que
intente husmear en el sistema no tenga acceso a la base de datos.
phpMyAdmin es una herramienta escrita en PHP que permite la administración de una base de
datos de MySQL a través de páginas web, ya sea en local o de forma remota a través de Internet.
Es un desarrollo de código abierto y está disponible bajo la licencia GPL.

Desde la pantalla principal se puede crear una nueva base de datos

A la izquierda se colocaran las base de datos creadas

Al hacer click sobre la base de datos nos enviara a la sección de creación de tablas
Después de poner el nombre de la tabla se empiezan a colocar el nombre de los distintos campos
en la primera columna

En al segunda columna se colocara el tipo de dato para almacenar, los mas usados son INT
(numeros enteros), VARCHAR (Letras y numeros) y TEXT (textos mayores de 255 caracteres)

En la tercera columna se define el numero máximo de caracteres

En la próxima columna si dejamos sin marcar el campo será obligatorio que se le coloque un valor,
por el contrario se deja como esta.
Después se colocara como índice Primary, para que cada registro se identifique de forma única y
se marcara la casilla A_I para que los valores se autoincremente

Y se guarda

Desde PHP se puede acceder fácilmente a una base de datos en MySQL empleando las más de 50
funciones que existen. Las principales funciones que se emplean para acceder a una base de datos
son:

 mysql_connect(servidorBD, usuario, contraseña): abre una conexión con un servidor de


bases de datos de MySQL, devuelve un identificador que se emplea en algunas de las
siguientes funciones o FALSE en caso de error.
 mysql_close(identificador): cierra una conexión con un servidor de MySQL, devuelve TRUE
en caso de éxito y FALSE en caso contrario.
 mysql_ping(identificador): verifica que la conexión con el servidor de bases de datos
funciona, devuelve TRUE en caso de éxito y FALSE en caso contrario.
 mysql_select_db(nombreBD, identificador): selecciona una base de datos, devuelve TRUE
en caso de éxito y FALSE en caso contrario.
 mysql_query(sentencia, identificador): ejecuta una sentencia SQL y devuelve un resultado
(SELECT, SHOW, EXPLAIN o DESCRIBE, ...) o TRUE (INSERT, UPDATE, DELETE, ...) si todo es
correcto, o FALSE en caso contrario.
 mysql_fecth_array(resultado): recorre un resultado, devuelve un array que representa una
fila (registro) o FALSE en caso de error (por ejemplo, llegar al final del resultado); al array
se puede acceder de forma numérica (posición de la columna) o asociativa (nombre de la
columna).
 mysql_fetch_assoc(resultado) y mysql_fetch_row(resultado): ambas funciones son
similares a la anterior mysql_fecth_array(resultado), pero sólo permiten el acceso como
array asociativo o con índices numéricos respectivamente.
 mysql_affected_rows(identificador): devuelve el número de filas (tuplas) afectadas por la
última operación si fue del tipo INSERT, UPDATE, etc., que no devuelven un resultado.
 mysql_num_rows(resultado): devuelve el número de filas (tuplas) afectadas por la última
operación si fue del tipo SELECT.
 mysql_free_result(resultado): libera la memoria ocupada por un resultado; en principio, se
libera automáticamente al finalizar la página, es necesario si en una misma página se
realizan varias consultas con resultados muy grandes.

Sentencias SQL

Las sentencias SQL pertenecen a dos categorías principales: Lenguaje de Definición de Datos, DDL
y Lenguaje de Manipulación de Datos, DML. Estos dos lenguajes no son lenguajes en sí mismos,
sino que es una forma de clasificar las sentencias de lenguaje SQL en función de su cometido.

Diferencia

El DDL crea objetos en la base de datos y sus efectos se pueden ver en el diccionario de la base de
datos.

el DML es el que permite consultar, insertar, modificar y eliminar la información almacenada en


los objetos de la base de datos.

Sentencias DDL

Sentencias DML
Operaciones básicas con MySQL

En MySQL además de llevar a cabo las operaciones con bases de datos, podemos también llevar a
cabo operaciones, no sólo con datos guardados en la base de datos, sino también con valores que
no necesariamente formen parte de nuestra base de datos.

Gracias a la sentencia SELECT se pueden llevar a cabo distintas operaciones como lo pueden ser la
suma, la multiplicación, resta y división

Los operadores funcionan de manera similar a los operadores a nivel de lenguaje de


programación, es decir, si las comparaciones si resultan verdaderas el valor seria 1; el contrarios si
resulta falso el valor seria 0.

La forma de llevar a cabo las comparaciones es a través de la sentencia SELECT, de la siguiente


forma:
SELECT operación comparativa;

 La operación de igualdad: 8 = 8.
 La operación de Mayor que: 7 > 3.
 La operación de Menor que: 4 < 15.
 La operación de Mayor o igual que: 3>=3.
 La operación de Menor o igual que: 10 <= 5.
 La operación No es igual a: 10 ¡=3 ó 3 <> 2.
 La operación Null: Null: 7 <=> Null.

También podría gustarte