Sei sulla pagina 1di 50

PHP NIVEL 1

Guía de PHP nivel 1 UNEWEB


INDICE
¿QUE ES PHP? .......................................................................................... 3

PHP .......................................................................................................... 3

PAQUETES PARA EL DESARROLLO EN PHP ..................................... 6

EDITORES DE TEXTO ............................................................................ 8

REGLAS DE PROGRAMACION EN PHP .................................................. 9

REGLAS BÁSICAS PARA LA SINTAXIS ................................................ 9

DEFINICION DE VARIABLES ............................................................... 11

OPERADORES ...................................................................................... 12

ESTRUCTURA DE CONTROL DE FLUJO DE DATOS ........................... 14

CONDICIONAL SIMPLE ........................................................................ 14

CONDICIONAL COMPUESTO .............................................................. 14

CONDICIONAL ANIDADO ..................................................................... 15

SELECCIÓN MÚLTIPLE: SWITCH – CASE .......................................... 18

ESTRUCTURA DE CONTROL ITERATIVAS ........................................... 19

CICLOS, LOOPS, BUCLES ................................................................... 19

FOR (PARA) ........................................................................................... 20

WHILE (MIENTRAS) .............................................................................. 21

DO…WHILE (HACER-MIENTRAS) ....................................................... 22

1
INCLUYENDO ARCHIVOS ....................................................................... 23

INCLUDE................................................................................................ 24

REQUIRE ............................................................................................... 25

INCLUDE_ONCE REQUIRE_ONCE ..................................................... 25

OPERACIONES BASICAS CON BASES DE DATOS ............................ 26

EJERCICIOS PARA PHP NIVEL 1 ........................................................... 27

PRIMER SCRIPT EN PHP ..................................................................... 27

VARIABLES ........................................................................................... 27

PROCESAR DATOS DE UN FORMULARIO ........................................ 29

ARCHIVO CONEXIÓN.PHP .................................................................. 32

ARCHIVO INDEX.PHP........................................................................... 33

OPERACIÓN INSERT (INSERTAR DATOS EN UNA TABLA) ............. 35

OPERACIÓN SELECT (CONSULTA DATOS DE UNA TABLA) ........... 37

OPERACIÓN UPDATE (MODIFICAR DATOS DE UNA TABLA) ......... 42

OPERACIÓN DELETE (ELIMINAR DATOS DE UNA TABLA) .............. 47

ENVIAR DATOS POR E-MAIL ............................................................... 48

2
¿QUE ES PHP?

PHP

PHP es un lenguaje de programación interpretado, diseñado

originalmente para la creación de páginas web dinámicas. PHP es un

acrónimo recursivo que significa PHP Hypertext Pre-processor. Su código

trabaja del lado del servidor y originalmente fue diseñado para

el desarrollo web de contenido dinámico.

Fue creado originalmente por Rasmus Lerdorf en 1994; sin embargo

la implementación principal de PHP es producida ahora por The PHP y se

considera esta licencia como software libre. 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.

PHP posee un parecido que posee con los lenguajes más comunes

de programación estructurada, como C , permiten a la mayoría de los

programadores crear aplicaciones complejas con una curva de

aprendizaje muy corta.

3
Lo mejor de utilizar PHP es su simplicidad para el principiante, pero a

su vez con todas las funcionalidades avanzadas para programadores

expertos.

Está orientado principalmente a la programación de scripts del lado

del servidor, y se puede recoger información de formulario, conectarse con

una base de datos, generar páginas de contenido dinámico, enviar o

recibir cookies, entre otras aplicaciones.

Principalmente existen tres campos en los que se puede usar los

script de PHP:

o Scripts del lado del servidor, es la forma tradicional de trabajar

con este lenguaje. Por su flexibilidad es el leguaje base para el

desarrollo de aplicaciones WEB de manejo de contenido.

o Scripts desde la línea de comandos. Se crear un script de PHP

y se ejecuta sin necesidad de un navegador. Se usa en caso

de necesitar ejecutar una tarea en forma repetitiva.

o Y por último desarrollo de aplicaciones de escritorio, aunque no

es lo más frecuente porque no es el lenguaje apropiado para

este tipo de desarrollo.

Los script de PHP son invisible al navegador web y al cliente, porque

es el servidor el encargado de procesar o ejecutar dicho código y enviar el

4
resultado al navegador, es de fácil conectividad con la mayoría de

motores de base de datos (Oracle, ODBC, DB2, Microsoft SQL Server,

Firebird y SQLite) que se utilizan en la actualidad, destaca entre ellos

MySQL y PostgreSQL. Debido a que es un software libre, de código

abierto y multi-plataforma, donde se puede trabajar con cualquier

paradigma de programación o cualquier metodología de desarrollo, se ha

popularizado estos años.

PHP comienza a funcionar cuando el cliente realiza una petición al

servidor, el servidor ejecuta el intérprete procesa la solicitud y se genera el

5
contenido o respuesta en forma dinámica (guardar información en una

bases de datos, envío de correo, impresión de archivos) y el resultado es

enviado por el mismo interprete al servidor quien su vez lo envía al

cliente en el navegador web y puede ser en diferentes formatos.

PAQUETES PARA EL DESARROLLO EN PHP

El diseño de PHP al ser tan sencillo de programar ha hecho uno de

los lenguaje de programación web más populares y para poder

interpretarlo vamos a utilizar el paquete XAMPP

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 está disponible para Microsoft Windows, GNU/Linux,

Solaris, y MacOS X.

Link: https://www.apachefriends.org/es/index.html

6
WAMP es el acrónimo usado para describir un sistema de

infraestructura de internet que usa las siguientes herramientas: Windows,

como sistema operativo; Apache, como servidor web; MySQL, como

gestor de bases de datos; PHP (generalmente), Perl, o Python, como

lenguajes de programación.

El uso de un WAMP permite servir páginas html a internet, además

de poder gestionar datos en ellas, al mismo tiempo un WAMP,

proporciona lenguajes de programación para desarrollar aplicaciones web.

Link: http://www.wampserver.com/en/

LAMP el acrónimo se refiere a un conjunto de subsistemas de

software necesarios para alcanzar una solución global, en este caso

configurar sitios web o servidores dinámicos con un esfuerzo reducido.

En las tecnologías LAMP esto se consigue mediante la unión de las

siguientes tecnologías: Linux, el sistema operativo; En algunos casos

también se refiere a LDAP; Apache, el servidor web; MySQL, el gestor de

bases de datos; Perl, PHP, o Python, los lenguajes de programación.

La combinación de estas tecnologías es usada primariamente para

definir la infraestructura de un servidor web, utilizando un paradigma de

programación para el desarrollo. A pesar de que el origen de estos

7
programas de código abierto no ha sido específicamente diseñado para

trabajar entre sí, la combinación se popularizó debido a su bajo coste de

adquisición y ubicuidad de sus componentes (ya que vienen pre-

instalados en la mayoría de las distribuciones linux). Cuando son

combinados, representan un conjunto de soluciones que soportan

servidores de aplicaciones. Ampliamente promocionado por el editor de la

editorial O'Reilly, Dale Dougherty, a sugerencia de David Axmark y Monty

Widenus desarrolladores de MySQL, la influencia de la editorial O'Reilly en

el mundo del software libre hizo que el término se popularizara

rápidamente en todo el mundo

MAMP, el acrónimo se refiere al conjunto de programas software

comúnmente usados para desarrollar sitios web dinámicos sobre sistemas

operativos Apple Macintosh, MAC OS X. Mac OS X: Sistema operativo;

Apache: Servidor Web; MySQL: Sistema Gestor de Bases de Datos; PHP,

Perl ó Python, lenguajes de programación usados para la creación de

sitios web.

Link: https://www.mamp.info/en/

EDITORES DE TEXTO

Son un programas que nos permiten crear y modificar archivos

digitales compuestos únicamente por texto sin formato, conocidos

8
comúnmente como archivos de texto o texto plano. Es la herramienta que

nos permite plasmar el código, existen una variedad de editores con

ventajas al momento de programar, a continuación se citan algunos:

Dreamweaver, Notepad++, Scite, Eclipse, Sublime Text, Brackets, etc.

REGLAS DE PROGRAMACION EN PHP

REGLAS BÁSICAS PARA LA SINTAXIS

El código fuente escrito en PHP va incluido dentro de las etiquetas

<?php ?>. Estas etiquetas se pueden utilizar tantas veces como sea

necesario dentro de un documento para colocar los párrafos requeridos

del código PHP. El intérprete PHP ejecutará sólo los comandos colocados

dentro de las etiquetas. La etiqueta abierta abreviada <? Viene de

versiones anteriores de PHP y su uso no es recomendable hoy en día.

Los espacios en blanco se pueden administrar como los

programadores deciden, teniendo en cuenta que a pesar de que no

afectan a la ejecución de los programas, que afectan a la legibilidad del

código fuente, es por ellos que es necesario usarlos en forma coherente

especialmente para la indentacion del código.

9
El intérprete PHP requiere que las sentencias individuales siempre

se terminan con un punto y coma (;). PHP es insensible hacia mayúsculas

y minúsculas en palabras clave y nombres de funciones. Sin embargo, los

nombres de las variables son sensibles a mayúsculas y minúsculas, por lo

que se considerará que el mismo nombre con diferentes valores de caso

pertenece a diferentes variables. Esta característica añade flexibilidad a

las convenciones de nomenclatura, pero no es recomendable, ya que es

propenso a provocar confusiones. Los nombres de las variables también

deben comenzar con un símbolo $ seguido de una letra o subrayado,

mientras que el resto de los caracteres pueden ser letras, números o

subrayados.

Los comentarios en PHP están precedidos por dos barras (//). Si el

comentario ocupa más de una línea, las barras diagonales deben incluirse

al inicio de cada línea. Otro símbolo que se puede usar en lugar de // es #,

pero generalmente se prefiere el primero. Si el comentario va a ocupar

varias líneas, podemos incluirlo dentro de los símbolos / * y * /. Recuerde

que los símbolos de comentarios son útiles no sólo para escribir

comentarios, sino para desactivar temporalmente o permanentemente

piezas de fuente sin tener que eliminarlas.

10
DEFINICION DE VARIABLES

Una variable es una entidad que puede adquirir un valor cualquiera y

cuyo valor puede cambiar a lo largo de la ejecución del programa. Este

elemento tiene un nombre único que debe ser diferente a las variables

propias del lenguaje de programación con el que se esté trabajando. El

PHP las variable se definen colocando el símbolo $, seguido del nombre,

no hace falta que estas se declaren previamente y tampoco indicarle de

que tipo de datos sera ejemplo $variable, es importante resalta que el

lenguaje discrimina entre mayúsculas y minúsculas es decir no es lo

mismo decir $variable a $Variable

Al momento de asignarle un valor es donde se discrimina de que tipo

son, si es una cadena de caracteres el valor se coloca en comillas y si es

número se coloca sin comillas.

Variables superglobales: Son variables de tipo array que mantienen

datos del sistema y se definen automáticamente en un ámbito global.

Existe una lista de variables superglobales, extraídas de la documentación

de PHP:

$GLOBALS: Contiene una referencia a cada variable disponible en el

espectro de las variables del script. Las llaves de esta matriz son los

nombres de las variables globales.

11
$_SERVER: Variables definidas por el servidor web ó directamente

relacionadas con el entorno en don el script se está ejecutando.

$_GET: Variables proporcionadas al script por medio de HTTP GET.

$_POST: Variables proporcionadas al script por medio de HTTP

POST.

$_COOKIE: Variables proporcionadas al script por medio de HTTP

cookies.

$_FILES: Variables proporcionadas al script por medio de la subida

de ficheros vía HTTP.

$_ENV: Variables proporcionadas al script por medio del entorno.

$_REQUEST: Variables proporcionadas al script por medio de

cuaquier mecanismo de entrada del usuario y por lo tanto no se puede

confiar en ellas.

$_SESSION: Variables registradas en la sesión del script.

OPERADORES

Los operadores son símbolo que indica la operación que se ha de

efectuar con el operando, siendo la operación una acción a realizar y de la

que se obtiene un resultado, mientras que el operando son los valores que

se van a operar números, textos, variables, constantes, valores lógicos.

12
Siempre las operaciones a realizar que entren dentro de paréntesis

(), tienen prioridad sobre las demás, es decir estas se evalúan primero, de

esta forma el programador obliga a realizar una operación primero que

otras. Si una expresión contiene varias operaciones de multiplicación,

división o residuo, o varias operaciones de suma o resta, los operadores

se aplican de izquierda a.

OPERADOR NOMBRE

OPERADORES ARITMETICOS
+ Suma
- Resta
* Multiplicación
/ División
% Mod (Residuo de la división)

OPERADORES COMPARACION
>, <, >=, <= Mayor, menor, mayor o igual,
menor o igual
==, != Igual, diferente
= asignación

OPERADORES LOGICOS

and (&&) Y lógico


or (||) O lógico

13
ESTRUCTURA DE CONTROL DE FLUJO DE DATOS

CONDICIONAL SIMPLE

IF (Si): El condicional simple IF (), evalúa si una o varias condiciones

de las condiciones indicadas en el IF sea verdadero para ejecutar un

bloque de codigo

Sintaxis:

if(condición)
{
<Bloque de instrucciones>;
}

El if evalúa la (condición>) y puede ocurrir dos casos:

o Si la condición se cumple o es verdadera, ejecuta Bloque de

instrucciones.

o Si la condición no se cumple o es falsa, no se realiza ninguna

instrucción del IF.

CONDICIONAL COMPUESTO

IF – ELSE (SI - SINO): En este a diferencia del anterior existe dos

posibles opciones o alternativa a elegir, primera en caso que la condición

evaluada sea verdadera y segundo en caso que la condición evaluada sea

falsa

14
Sintaxis:

if(condición)
{
<Bloque de instrucciones 1>;
}
Else
{
<Bloque de instrucciones 2>;
}

El if evalúa la (condición>) y puede ocurrir dos casos:

o Si la condición se cumple o es verdadera, ejecuta Bloque de

instrucciones 1.

o Si la condición no se cumple o es falsa, ejecuta Bloque de

instrucciones 2.

CONDICIONAL ANIDADO

IF - ELSE IF (SI – SINO SI): Permite ejecutar varias condiciones en

cascada, es decir se elegir entre más de dos opciones o alternativas,

según se cumpla o no las diferentes condiciones que se ha evaluado en

cada instrucción de IF.

Sintaxis:

if(condición1)
{
<Bloque de instrucciones 1>;
}
Else if(condición2)

15
{
<Bloque de instrucciones 2>;
}
Else
{
<Bloque de instrucciones 3>;
}

El if evalúa la (condición>):

o Si la condición1 se cumple o es verdadera, ejecuta Bloque de

instrucciones 1.

o Si la condición1 no se cumple o es falsa, se vuelve a evaluar

pero ahora la condición2, si esta se cumple, ejecuta Bloque de

instrucciones 2.

o Si la condición2 no se cumple o es falsa, ejecuta Bloque de

instrucciones 3.

Finalmente podemos concluir que se ejecuta el bloque de

instrucciones 1 si la primera condición es verdadera, se ejecuta el bloque

de instrucciones 2 si la primera condición es falsa y la segunda condición

verdadera y se ejecuta el bloque de instrucciones 3 si la condición 1 y la

condición 2 son falsa.

16
Ejemplo 1:

<?php
$edad = 20;
if($edad>=18){
print "eres mayor de edad";
}
else{
print "eres menor de edad";
}
?>

Ejemplo 2:

<?php
if ($a == $b) {
print "a y b son iguales";
}
elseif ($a > $b) {
print "a es el mayor";
}
else {
print "b es el mayor";
}
?>

17
SELECCIÓN MÚLTIPLE: SWITCH – CASE

Esta estructura de control permite evaluar una condición o expresión

la cual puede tomar muchos valores distintos, se evalúa la condición de la

selección y se realiza el bloque de instrucciones correspondientes a la

condición que se cumple.

switch(n) {
case 1:
<bloque instrucciones 1>;
break;
case 2:
< bloque instrucciones 2>;
break;
case 3:
< bloque instrucciones 3>;
break;
default:
< bloque instrucciones 4>;
break; }

Cuando la variable n se le asigna el valor 1, se ejecuta el bloque

<bloque instrucciones 1> correspondiente al case 1, después de

ejecutarse la última instrucción del bloque 1 se ejecuta la instrucción

break; y luego continua la ejecución del programa a partir de la llave.

En el caso de que la variable número no esté dentro del rango de valores

entre 1-3 Entrará en el default y se controlará con el bloque de

instrucciones 4.

18
Ejemplo 3:

$dia = 3;
switch ($dia) {
case 1:
print"domingo";
break;
case 2:
print"lunes";
break;
case 3:
print"martes";
break;
case 4:
print"miercoles";
break;
case 5:
print"jueves";
break;
case 6:
print"viernes";
break;
case 7:
print"sabado";
break;
default:
print"ERROR";
}

ESTRUCTURA DE CONTROL ITERATIVAS

CICLOS, LOOPS, BUCLES

Los ciclos, loops o bucles se refiere a un bloque de codigo que se

repiten un número determinado de veces, siempre y cuando se cumpla

19
una condición o esta sea verdadera, y cada repetición del conjunto de

acciones se denomina iteración. Estos bucles no deben ejecutarse de

forma infinita, es decir deben tener una condición de parada o de fin. Esta

condición se verifica cada vez que se ha finalizado una iteración.

Se pueden utilizar tantos ciclos como sean necesarios pueden estar

inclusive anidados, es decir uno dentro de otro, existe tres estructuras de

control iterativas que estudiaremos a continuación:

FOR (PARA)

Esta estructura iterativa se controla a través de una variable que se

pudiera indicar como contador, la cual se va incrementando o

decrementando hasta llegar al valor que fue definido como el valor final y

que va a representar la condición de parada.

Es recomendable utilizar esta estructura cuando el número de

iteraciones está totalmente definido, es decir en los casos en que es fijo.

Sintaxis:

for ( $i=0; $i<=10; $i++)


{
<Bloque de instrucciones>
}

Donde:

20
 $i = 0, indica el punto de partida del ciclo, se ejecuta siempre

al comienzo del bucle

 $i<=10 indica que mientras esta condición sea verdadera se

ejecutara el ciclo, se evalúa al comienzo de cada bucle.

 $i++ es el que permitirá definir el contador de las iteraciones

que se han realizado, se evalúa al final de cada bucle

Ejemplo 4:

<?php
// imprimir números pares hasta el 10
for($i = 0,$i <=10;$i= $i+2){
print $i;
}
?>

WHILE (MIENTRAS)

Esta estructura de control iterativa evalúa inicialmente si la

condición que se indica es verdadera antes de entrar en al cuerpo de

instrucciones que se repetirán, es por ello que puede ocurrir que la

iteración no se realice ni una sola vez. Las instrucciones del Mientras se

pueden realizar 0 o más veces antes de que se cumpla la condición de

terminar el ciclo. El conjunto de instrucciones dentro del While – Mientras,

se ejecuta cuando la condición de entrada del principio se cumple (es

21
verdadera). Dicho de otro modo, el ciclo de instrucciones dentro del While

se va a detener cuando la condición se haga falsa.

La estructura While es recomendada cuando tienes que verificar la

condición de entrada al inicio y si se cumple, entonces, entrar al ciclo y

realizar sus instrucciones, y cuando no sabes cuantas iteraciones vas a

realizar.

Sintaxis:

while (condición){
//bloque de código que se ejecuta repetidamente
}

Ejemplo 5:

<?php
$i = 1;
while ($i <= 10){
print $i;
$i++;
}
?>

DO…WHILE (HACER-MIENTRAS)

Similar al while pero este primero ejecuta un bloque de código y

después evalúa si la condición es verdadera o falsa, es decir este seva a

ejecutar por lo menos una vez antes de que finalice el ciclo. Es

22
recomendada cuando las instrucciones del ciclo se deben realizar al

menos 1 vez antes de comprobar la condición de parada.

Sintaxis:

Do {
//bloque de código que se ejecuta repetidamente
}
while (condición);

Ejemplo 6:

<?php
$i = 0;
do {
print $i;
$i++;
} while ($i < 10);
?>

INCLUYENDO ARCHIVOS

Las instrucciones include y require son de las más conocidas en php.

Con ellas puedes reutilizar porciones de código (script, o simple html)

cuantas veces quieras, siendo uno de sus usos más sencillos y típicos el

de incluir cabeceras y pies de páginas en un sistema de plantillas.

23
INCLUDE

La sentencia include() inserta y evalúa el archivo especificado.

Puedes incluir aquí no solamente un fichero en tu servidor, sino una

página web remota (indicando la url). Su uso típico sería

<?php include ("header.php");?> , que llama al archivo header.php y lo

inserta en el propio punto del script donde hacemos la llamada.

Tanto si insertamos un archivo con include() o require(), debes tener

en cuenta que PHP pasa a modo html hasta el final del mismo, por lo que

si el archivo a insertar contiene código php que deba ser evaluado

(ejecutado), debe ser encerrado dentro de etiquetas de comienzo y fin de

PHP.

Puedes también utilizar varios include anidados (es decir, utilizar

include para llamar a otro archivo, dentro del archivo a incluir), con la

única precaución de tener en cuenta que los archivos que se van

insertando se ejecutan en el entorno del archivo primero que contiene la

llamada, lo que es importante al establecer los paths. Por ejemplo, si

tienes dos archivos, footer.php y notes.php en un directorio llamado

anexos y llamas al primero desde fuera de ese directorio, lo harías así:

include ("anexos/footer.php"); y si footer.php contiene una llamada a otro

archivo notes.php, debes escribir hacer la llamada también como include

24
("anexos/notes.php"); puesto que aunque footer y notes están en el mismo

directorio, la llamada a ambos es desde fuera, desde la misma posición

que el script que hace la llamada.

Y lo mismo ocurre con las variables. El codigo insertado hereda el

mismo alcance de variables que el código donde sea insertado.

REQUIRE

La diferencia documentada entre include y require consistiría en que

la llamada con include podría hacerse condicionalmente. A diferencia de

include(), el require() siempre leerá el archivo referenciado, incluso si la

línea en que está no se ejecuta nunca. Si se quiere incluir

condicionalmente un archivo, se usa include().

Sin embargo, a partir de la version PHP 4.0.2 y posteriores esto ya no

es asi y ambas construcciones se comportan exactamente de la misma

manera, con la única diferencia de que si el archivo llamado no existe,

include solo da una advertencia, y sigue ejecutando el código, mientras

que require produce un error y interrumpe la ejecución.

INCLUDE_ONCE REQUIRE_ONCE

Estas construcciones presentan como única diferencia que la

inclusión del archivo se ejecuta una sola vez (aunque a lo largo de la

25
ejecución del script existan otras llamadas al mismo), lo que es útil para

evitar conflictos con funciones o nombres de variables.

OPERACIONES BASICAS CON BASES DE DATOS

Para este curso se creara un sistema de procesamiento de datos el

cual permitirá realizar las operaciones básicas a una base de datos,

agregar información, modificar información, consultar información, eliminar

información.

INSERT inserta datos en una tabla de la BD.

SELECT selecciona la tabla para devolver valores. Estas son las

llamadas Consultas.

DELETE borra valores de una tabla.

UPDATE actualiza o modifica valores de una tabla.

26
EJERCICIOS PARA PHP NIVEL 1

PRIMER SCRIPT EN PHP

Antes que nada debemos recordar que debemos tener instalado el

paquete XAMPP, después de instalarlo, debemos ir a xampp control panel

y activar Apache y Mysql tal como se muestra en la siguiente figura:

Para comenzar a trabajar debes crear una carpeta en la siguiente

ruta C:/xampp/htdocs/ y todos los archivos que vamos a crear deben estar

guardados en esa ruta que es la que simula nuestro servidor local, para

poder visualizarla ejecución.

VARIABLES

27
Comience creando un archivo en el editor de texto de su

preferencia, se nombró varios en la sección de editores de texto, llamado

index.php y colocarlo en el "directorio C:/xampp/htdocs/ " en una carpeta

<nombre> con el siguiente contenido:

Ejemplo #1 Nuestro primer script PHP: index.php en este ejercicio

se puede observar la definición de una variable y luego la impresión por

pantalla de la misma justo con una cadena de caracteres

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
$x = "mundo";
echo "Hola $x ";
?>
</body>
</html>

Esto se puede observar en su navegador colocando la ruta

siguiente http://localhost/nombreCarpeta/

Ejemplo #2 Operaciones con variables: guardarlo en la carpeta


creada con el nombre operaciones.php, este ejercicio nos permite verificar

28
el proceso de asignación a una variable, así como el uso de los
operadores aritméticos.

<body>
<?php
$x = 5;
$y = 2;
echo $x + $y. “<br>”;
echo $x - $y. “<br>”;
echo $x * $y. “<br>”;
echo $x / $y. “<br>”;
$x++;
echo $x. “<br>”;
$y++;
echo $y. “<br>”;
?>
</body>

PROCESAR DATOS DE UN FORMULARIO

Este ejercicio pretende recibir información de un formulario y

procesarla para ser enviada a una base de datos y así tener una página

dinámica en PHP.

 Primer paso crear una base de datos donde se guardara la

información recibida del formulario, para ello se usara phpMyAdmin,

29
entrar en la dirección http://localhost/phpmyadmin/ y colocar la

sentencia sql create database persona.

 Después de crear la base de datos, se crea una tabla en donde se


guardaran los datos de los usuarios que se registren allí, esta tabla
debe contener nombre, apellido, cedula, correo, sexo, dirección,
para ello utilizaremos la siguiente sentencia SQL

CREATE TABLE usuarios (


cedula int(8) NOT NULL,
nombre varchar(15) NOT NULL,
apellido varchar(15) NOT NULL,
direccion varchar(100) NOT NULL,
email varchar(30) NOT NULL,
telefono varchar(15) NOT NULL,
sexo char(1) NOT NULL,
PRIMARY KEY (cedula)
)

 Se crea en la C:/xampp/htdocs/ una carpeta de nombre proyecto,

donde guardaremos todos los archivos correspondiente a este

ejercicio.

 Como vimos en los ejemplos anteriores, los códigos php se colocan

después del <body> de cada archivo en la parte de Code.

30
Para el procesamiento de formularios en PHP es necesario hacer

uso de variables predefinidas de $_POST y $_GET, se define cual se

utilizara en la cabecera del formulario en el atributo llamado method,

estos métodos deben colocarse en mayúscula, como se muestra:

Cuando se hace uso del método GET codifica los parámetros del

formulario en la dirección URL en lo que se llama una cadena de

consulta, es decir todas las variables enviadas del formulario se

pueden visualizar en el url de la página.

Mientras que al realizar una solicitud POST, esta pasa los

parámetros del formulario en el cuerpo de la solicitud HTTP, dejando

intacta la URL. Este es el que usaremos para evitar mostrar nuestra

información en el URL. Todo input debe tener el atributo name, y este

será el nombre de la variable que vamos a recibir en el código php

asociado al método previamente definido, en nuestro caso método

POST.

<form method= "post" action="">


Cedula: <input type="text" name="cedula" >
</form

31
Al recibir la información enviada a través del formulario es necesario
hacer uso de código PHP, se invoca a la función isset que permitirá
verificar si la variable cedula está definida. Para recibir la variable enviada
desde el formulario usamos el método con el nombre del input del que
necesitamos la información $_POST ['cedula'].

<?php
if (isset($_POST['cedula'])) {
$ci = $_POST['cedula'];
echo $ci;
} ?>

ARCHIVO CONEXIÓN.PHP

Este archivo contiene una variable que tendrá la información de la

base de datos con la que se va a conectar, y para ello vamos a usar una

función de PHP que se llama mysqli_connect(). Dicha función posee

varios parámetros que me permite conectar con una base de datos

ubicada en el servidor, donde el primer parámetro representa el servidor

con que nos conectaremos, seguido del usuario a conectar con la base de

datos, la clave para la base de datos que en nuestro caso esta vacía

porque estamos trabajando con el usuario root, que nos lo da XAMPP por

defecto, por ultimo nombre de la base de datos ya creada.

32
mysqli_connect(servidor, usuarioBD, claveBD).

<?php
$link= mysqli_connect("localhost","root","");
mysqli_select_db($link,"php1");
?>

ARCHIVO INDEX.PHP

Se debe crear un archivo index.php, el cual estará compuesto por

un archivo llamado menu.html, para ello se hará uso de la sentencia

include estudiada previamente, la intención de es evitar la redundancia de

codigo y como la cabecera se repetirá en varios archivo no será necesario

repetir todo el código.

menu.html este archivo contiene una tabla con un menú de

navegación en que me permitirá en forma rápida y sencilla acceder a

cualquier ítem del programa.

33
<table width="600" border="1" style="margin: 0 auto;">
<tr align= "center" >
<td><a href="index.php">Home <a/></td>
<td><a href="insertar.php">Registrar <a/></td>
<td><a href="modificar.php">Modificar <a/></td>
<td><a href="reporte.php">Consultar <a/></td>
<td><a href="modificar.php">Eliminar <a/></td>
<td><a href="buscar.php">Buscar <a/></td>
<td><a href="contacto.php">Correo <a/></td>
</tr>
</table>

index.php este archivo es bastante simple solo contiene una

sentencia include, para invocar el archivo menú.html que nos permitirá

hacer uso de ese codigo sin necesidad de volver a escribirlo.

<html>
<head>
<title> index </title>
</head>
<body>
<?php
include "menu.html";
?>
</div>
</body>
</html>

34
Después que ya se tiene la conexión con la base de datos y el

archivo correspondiente a la página principal (índex) el cual contiene al

menú, se procede a realizar la recolección de la información a través de

un formulario y llenar la base de datos.

OPERACIÓN INSERT (INSERTAR DATOS EN UNA TABLA)

insertar.php Este archivo está compuesto por un fragmento de

código HTML que mostrara el formulario y el código PHP que realizara la

inserción a la base de datos

<form method= "post" action="">


Cedula: <input type="text" name="cedula"><br>
Nombre:<input type="text" name="nombre"><br>
Apellido:<input type="text" name="apellido"><br>
Email:<input type="text" name="email"><br>
Telefono:<input type="text" name=" telefono "><br>
Direccion:
<textarea name="direccion" rows="5" cols="25"></textarea><br>
Sexo:
<input type="radio" name="sexo" value="M"> Masculino
<input type="radio" name="sexo" value="F"> Femenino <br>
<input type="submit" value="Registrar" id="registrar"/>
<input type="reset" value="limpiar" id="limpiar" />
</form>

35
Inmediatamente después de realizar la creación del formulario

debemos crear un archivo insertar1.php que nos permitirá la inserción en

la base datos, para ello haremos uso de varias funciones para ejecutar el

código SQL.

mysqli_query(conexionBD , sql), Permite ejecutar o realiza una

consulta o búsqueda (query) contra la base de datos. Nos retorna TRUE si

se ejecutó con éxito o FALSE si hubo un error en la ejecución

mysqli_error(conexionBD) Esta función devuelve la última

descripción de error para la llamada de función más reciente, si la hay, en

este caso vamos a usarla para que nos regrese el error si existe cuando

se ejecuta mysqli_query(conexionBD , sql), retorna una cadena vacía

sino ha ocurrido ningún error y si existe alguno retorna la cadena con el

mensaje asociado a dicho error

insertar1.php

<?php
include "conexion.php";
$sql="insert into usuarios values
('$_POST[cedula]','$_POST[nombre]','$_POST[apellido]',
'$_POST[direccion]','$_POST[email]','$_POST[telefono]','$_POST[sexo]');
$result = mysqli_query($link,$sql); //ejecuto la consulta
echo mysqli_error($link);
if (!mysqli_error($link)){

36
?>
<script>
alert("Se ingreso con total normalidad");
</script>
<?php } else { ?>
<script>
alert ("Estamos en mantenimiento preventivo");
</script>
<?php } ?>
<meta http-equiv="refresh" content="20;URL=insertar.php">

Todos los nombre de las variables contenidas en el POST, están

asociados a los nombres con que se identificó a la etiqueta input en el

formulario.

OPERACIÓN SELECT (CONSULTA DATOS DE UNA TABLA)

Esta sección nos permitirá buscar las columnas que necesitemos

de una tabla, en este caso se buscara todas las columnas que están en la

tabla usuarios. Para ello es conveniente crear una tabla que contenga

como cabecera los datos que vamos a mostrar, sin embargo no la

podemos llenar de una vez porque no se sabe cuantas filas tiene la tabla

37
usuarios, es por ello que será necesario hacer uso de alguna estructura de

control iterativa para que lleve la tabla en forma dinámica.

La función mysqli_fetch_array(result) nos permitirá retornar un

array que corresponde a la fila obtenida o NULL si es que no hay más

filas, esto se extrae de una consulta SQL previamente ejecutada. Esta

necesita un parámetro en este caso llamado result, y es un conjunto de

identificadores de resultados devuelto por mysqli_query(), asociado a la

consulta SELECT que se haya ejecutado.

reporte.php Creamos una tabla que va a mostrar los mismos

campos de mis registros, como se muestra a continuación:

<table width="600" border="1" align = "center">


<tr>
<th>CEDULA</th>
<th>NOMBRE</th>
<th>APELLIDO</th>
<th>DIRECCION</th>
<th>EMAIL</th>
<th>TELEFONO</th>
<th>SEXO</th>
</tr>

38
Luego de debe llenar la tabla en forma dinámica:

<?php
$sql="select * from usuarios";
$result = mysqli_query($link, $sql); //ejecuto la consulta
while ($ver=mysqli_fetch_array($result)) { ?>
<tr>
<td><?php print $ver [0]; ?></td>
<td><?php print $ver [1]; ?></td>
<td><?php print $ver [2]; ?></td>
<td><?php print $ver [3]; ?></td>
<td><?php print $ver [4]; ?></td>
<td><?php print $ver [5]; ?></td>
<td><?php print $ver [6]; ?></td>
</tr> <?php } ?>
</table>

La estructura WHILE permite imprimir las filas de la tabla usuarios

en el HTML, de forma dinámica porque no sabemos en realidad cuantos

registros existen en la tabla. Para imprimir la información contenida en el

vector $VER, se debe volver hacer uso de PHP, se está aplicando el

concepto de incrustación de código PHP dentro de HTML, para así poder

en cada TD imprimir un índice del vector.

buscar.php este archivo nos permitirá, realizar una búsqueda en la


base de datos pero utilizando un filtro, es decir los resultados deben
cumplir con una condición que se indicara en el sql, por ejemplo un
nombre, cedula, o el filtro que se necesite para el sistema. En ese archivo

39
de debe definir inicialmente un formulario donde se solicitara el filtro a
aplicar, en este caso se hará por nombre.

<form method="POST">
<table width="512" height="46" border="0" align="center">
<tr>
<th height="40">Cedula</th>
<th><input type="text" name="buscar" /></th>
<th><input type="submit" value="buscar" /></th>
</tr>
</table>
</form>

Luego haremos uso de la función isset() para verificar si se ha


enviado el formulario y solo en caso que sea verdadero se imprima la
tabla con los resultados justo debajo.
<?php if (isset ($_POST ['buscar'])){ ?>
<table width="600" border="1" align="center">
<tr>
<th>CEDULA</th>
<th>NOMBRE</th>
<th>APELLIDO</th>
<th>DIRECCION</th>
<th>EMAIL</th>
<th>TELEFONO</th>
<th>SEXO</th>
</tr>
<?php

40
$sql="select * from usuarios where cedula ='$_POST[buscar]'";
$result = mysqli_query($link, $sql); //ejecuto la consulta
while ($ver=mysqli_fetch_array($result))
{ ?>
<tr>
<td><?php print $ver [0]; ?></td>
<td><?php print $ver [1]; ?></td>
<td><?php print $ver [2]; ?></td>
<td><?php print $ver [3]; ?></td>
<td><?php print $ver [4]; ?></td>
<td><?php print $ver [5]; ?></td>
<td><?php print $ver [6]; ?></td>
</tr> <?php } ?>
</table>
<?php } ?>

El cambio principal se puede observar en la sentencia SQL, el cual

contiene la estructura WHERE que permita colocar una condición en la

búsqueda, esta condición debe ser igual a la variable que contiene el filtro

asociado a la cedula que introdujo el usuario.

41
OPERACIÓN UPDATE (MODIFICAR DATOS DE UNA TABLA)

modificar.php: para el proceso de modificar es necesario crear el

archivo que debe contener un formulario donde se solicite información de

la cedula, ya que por este medio se realizara la modificación, siempre

teniendo la premisa que las cedulas deben ser única, este formulario es

similar al realizado en el archivo de consultar, la única particularidad es

que debemos agregar dos columnas adicionales, una que muestre un

hipervínculo para modificar y otra para eliminar, aun y cuando ahorita nos

concentraremos en el modificar y debe quedar de la siguiente forma:

Para definir esas columnas se debe hacer uso de la etiqueta A de

HTML para realizar un hipervínculo, este contendrá la ruta del siguiente

archivo donde se mostrara los datos específicos de la persona que se

quiere modificar, en dicho hipervínculo se enviara también una variable

que contiene la cedula de la persona a modificar para luego ser

consultada, ese envío se realiza como se muestra a continuación:

42
<?php
$sql="select * from usuarios";
$result = mysqli_query($link, $sql); //ejecuto la consulta
while ($ver=mysqli_fetch_array($result)){ ?>
<tr>
<td><?php print $ver [0]; ?></td>
<td><?php print $ver [1]; ?></td>
<td><?php print $ver [2]; ?></td>
<td><?php print $ver [3]; ?></td>
<td><?php print $ver [4]; ?></td>
<td><?php print $ver [5]; ?></td>
<td><?php print $ver [6]; ?></td>
<td><a href="modificar2.php?mod=<?php print $ver [0];?> "> Modificar </a>
</td>
<td><a href="eliminar.php?eli=<?php print $ver [0];?> ">Eliminar</a></td>
</tr> <?php } ?>
</table>

Esta información de la cedula se envía a un archivo llamado

modificar2.php tal como se muestra en el hipervínculo anterior, en el cual

se realizara la consulta del usuario asociado a la cedula enviada en la

variable mod de la etiqueta A

modificar2.php en este archivo recibimos la cedula del usuario a

modificar, y debemos buscar en la base de datos los datos de ese usuario

para ello se realiza una consulta a la base de datos, luego estos datos se

43
imprimen en campos editable de un formulario para poder realizar las

modificaciones necesarias, al ser input deben estar incluidas dentro de un

formulario de HTML, este formulario será enviado a un último archivo

llamado modificar3.php, que será el encargado de aplicar los cambios en

la base de datos

<body>
<?php
include "conexion.php";
$sql="select * from usuarios where cedula ='$_GET[mod]'";
$result = mysqli_query($link, $sql);
$ver=mysqli_fetch_array($result);
?>
<form method="post" action="modificar3.php">
<p>
<label for="textfield">Nombre:</label>
<input type="text" name="nombre" value="<?php print $ver[1];?>"/>
</p>
<p>
<label for="textfield2">Apellido:</label>
<input type="text" name="apellido" value="<?php print $ver[2];?>"/>
</p>
<p>
<label for="textfield3">Direccion:</label>
<input type="text" name="direccion" value="<?php print $ver[3];?>"/>
</p>
<p>

44
<label for="textfield3">Email:</label>
<input type="text" name="email" value="<?php print $ver[4];?>"/>
</p>
<p>
<label for="textfield3">Telefono:</label>
<input type="text" name="telefono" value="<?php print $ver[5];?>"/>
</p>
<p>
<label><?php if ($ver [6] =='F' ){ ?>
<input type="radio" name="sexo" value="F" checked/>
<?php }
else {?>
<input type="radio" name="sexo" value="F"/><?php } ?>
Femenino</label>
<label><?php if ($ver [6] =='M'){ ?>
<input type="radio" name="sexo" value="M" checked/>
<?php } else {?> <input type="radio" name="sexo" value="M"/><?php
} ?>
Masculino</label>
</p>
<input type="hidden" name="oculto" value="<?php print $ver[0];?>"/>
<input type="submit" name="submit" id="submit" value="Enviar">
</form>

Como se puede observar en el código anterior los datos extraídos

de la base de datos se imprimen en la etiqueta input, en el atributo value,

para que tenga ese valor por defecto. Al no poder editarse la cedula, esta

45
se debe enviar en un campo oculto en el formulario para saber cuál es el

usuario a modificar, el cual contiene los datos correspondiente al vector en

la posición 0 (cedula). Los cambios realizados se envían al archivo

modificar3.php

modificar3.php Se realizara el proceso de modificar usando la

sentencia UPDATE, en este archivo se recibe todo el formulario

incluyendo el campo oculto que corresponde a la cedula tan necesario

para la modificación.

<?php include ("conexion.php");


$sql="update usuarios set nombre='$_POST[nombre]',
apellido='$_POST[apellido]',direccion='$_POST[direccion]',email='$_POST
[email]',telefono='$_POST[telefono]', sexo='$_POST[sexo]' where
cedula='$_POST[oculto]' ";
$result = mysqli_query($link, $sql);
if (!mysqli_error($link)){
echo"Se modifico correctamente";
} else{
echo "error";
} ?>
<meta http-equiv="refresh" content="3;URL=modificar.php">

46
OPERACIÓN DELETE (ELIMINAR DATOS DE UNA TABLA)

Trabajaremos con el mismo archivo que se llama modificar.php, en

donde se listan los usuarios en la base de datos pero ahora usaremos el

hipervínculo para eliminar

El hipervínculo envía una variable que contiene la cedula del

individuo a eliminar a un archivo llamado eliminar.php que será el

encargado de eliminar el registro seleccionado de la siguiente forma:

<?php
include "conexion.php";
$sql="delete from USUARIOS where cedula='$_GET[eli]'";
$result = mysqli_query($link, $sql);
if (!mysqli_error($link)){ ?>
<script> alert("Se elimino con exito"); </script>
<?php }else{?>
<script> alert ("Estamos en mantenimiento preventivo"); </script>
<?php } ?>
<meta http-equiv="refresh" content="0;URL=modificar.php">

47
Para realizar el proceso de borrar se utiliza la sentencia sql DELETE

y que cumpla la condición de la cedula que se envió previamente del

hipervínculo.

ENVIAR DATOS POR E-MAIL

Este solo funciona con un servidor de correo es decir es necesario

del uso de un hospedaje para que puedan llegar los correos a la

dirección indicada.

contacto.php Se crea un formulario en el archivo con la siguiente

interfaz y estedebe enviar los dato aun archivo llamado correo.php

correo.php Este código de PHP es el necesario para hacer el envío

por correo, para ello se usa la función mail() que contiene varios

parámetros, primer parámetro se define el correo destino, es decir donde

48
llegaran los correos desde la página web, segundo parámetro

corresponde al asunto del correo, y por último el cuerpo del mensaje que

se enviara.

<?php
$Mensaje="Nombre $_POST[Nombre]
Correo: $_POST[Correo]
Mensaje: $_POST[Mensaje]";
if(mail("correo@gmail.com","envio de la web",$Mensaje)){
?>
<script>
alert("Se envio el correo");
</script>
<?php } else { ?>
<script>
alert ("error");
</script>
<?php } ?>
<meta http-equiv="refresh" content="0;URL=contacto.php">

49

Potrebbero piacerti anche