Está en la página 1de 41

Universidad Mayor de San Simón

Programación de Paginas
Dinámicas PHP

INSTRUCTOR:
Juan Carlos Torrico Rios
juancarlos@cs.umss.edu.bo
Agosto del 2005
Armando la infraestructura
necesaria para programar con PHP

• Instalando Apache (manual de instalación Apache)


• Instalando Php y MySQL(manual de instalación PHP
y MySQL)
Introducción a PHP

• ¿Qué es PHP?
• ¿Cuáles son sus características más importantes?
•¿Cuándo y porqué usarlo?
•¿Cómo funciona esto?
Funcionamiento de PHP Paginas
Dinámicas
Funcionamiento de HTML paginas
Estáticas
Conociendo el lenguaje PHP
(ver ejemplo1.php)
• Delimitadores:
<?php Código PHP ?>
• Comentarios:

// Comentario de línea
/* Comentario de varias líneas */
# También comentario de una línea
• ¿Cómo grabar el archivo?

nombArch.php
• Cada instrucción termina con un punto y coma
Imprimiendo texto
(ver ejemplo2.php)
• Usando la función echo
echo (“Línea 1”) ;
echo “Línea 2” ;
• Colocando fin de línea

<br>, <p>
• Concatenado cadenas con punto

echo “cadena”.”unida”;
• Las dobles comillas igual a las simples

echo ‘cadena’.”unida”;
Variables
(ver ejemplo3.php)
• Comienzan con el signo de dólar $
$nick = “samielt”;
• No es necesario definir una variable antes de
usarla
$apellido = “Torrico Rios”;
$nombre = “Juan Carlos”.$apellido.”<br>”;
• No tienen tipos

$numero = 1234;
$numero = “Mil docientos treinta y cuatro”;
Tipos de Datos
(ver ejemplo4.php)
• Enteros
$a = 12; $b = -120;
• Reales

$a = 12.34; $b = -12.12;
• Cadenas

$a = “Una Cadena”;
• Arreglos

$a[0] = 1; $a[1] = “dos”;


Casting y Conversión de Tipos
(ver ejemplo5.php)

• Los tipos validos en PHP son:


integer, double, string, array y object
• El casting se realiza:

(tipo) $variable/dato
$suma = (string) 223;
• La conversion se realiza:

settype(“double”,$suma);
• El tipo de un dato se obtiene:

gettype($suma);
Constantes
(ver ejemplo6.php)

• No llevan signo de dólar adelante


• No pueden ser redefinidas
• No pueden contener valores de vectores
• Se usa define() para crear constante

define(“PI”,3.141516);
echo PI;
Operadores
• Aritméticos
+,-,/,%,*
• Lógicos

|| , && , !
• Comparación

<= , =>, < , > , != , ==


• Asignación

=
• Incremento/Decremento

++ , --
Precedencia de Operadores
( ) Paréntesis
* Producto
/ División
+ Suma
- Resta
Estructuras de Control Condicional
(ver ejemplo7.php)
• if
if ( <expresion> ) { .... }
else { .... }
• switch

switch( <dato> )
{ case <ctte>: <instrucciones>; break;
default: <instrucciones>;
}
• Condicional simple
(<expresion>) ? <Instrucciones true> : <Instrucciones false>
Estructuras de Control Repetitivas
(ver ejemplo8.php)

• while
while( <expresion> ) { .... }
• for

for(<def>;<expresion>,<incremento>) { .... }
• do/while

do{ .... } while( <expresion> )


• foreach

foreach( <array> as <variable>) { .... }


Funciones de Cadenas
 explode (separador, cadena)
Divide una cadena por otra devuelve una
matriz de cadenas.
 strcmp (cadena1, cadena2)
Comparación de cadenas devuelve 0 si son
iguales.
 strlen (cadena)

Obtiene la longitud de la cadena.


Funciones de Cadenas
 strpos (cadena1,cadena2)
busca la cadena2 dentro de cadena1
indicandonos la posicion en la que se
encuentra.
 str_replace (cadena1,cadena2,texto)

reemplaza la cadena1 por la cadena1 en el


texto.
Funciones de Cadenas
 substr(cadena,inicio,longitud)
devuelve una subcadena de otra,
empezando por inicio y de longitud
longitud
 trim(cadena)

elimina espacios del principio y final de una


cadena
Funciones en PHP
(ver ejemplo9.php)
• Definición de una función
function( <argumentos> ) {
.........
return <valor>; }
• Uso de una variable global en una función

$suma = 15;
function() {
global $suma;
echo $suma; }
Utilizando Ficheros Externos
(ver ejemplo10.php)

• include
include( <nombreArchivo> );
• require

require( < nombreArchivo> );


• Otra alternativa para incluir archivos

requiere_once( < nombreArchivo> );


Evitar errores por duplicidad de
llamadas
 Tanto con la instrucción include como con
require si se trata de incluir dos o más
veces un fichero que contenga funciones
aparecerá un error y la página que los
contenga dejará de cargarse.

Ese error lo obvian las funciones:


Diferencia entre include y require
 su única diferencia con include y requiere
es que require comprueba antes de
ejecutarse si el fichero llamado ha sido
incluido con anterioridad.

Si ha sido incluido, no realizan la segunda


inclusión
Paso de datos en PHP
 Metodo GET:
• Usando el URL
• Usando un enlace a otra pagina web (ver
ejemplo1.html).
• Estructura y datos:
http://localhost/yo.php?nombre=minombre&ci=3423&color=celeste
• Recuperando datos.

$HTTP_GET_VARS[<nombre de la variable>]
$_GET[<nombre de la variable>]
• funcion urlencode() (ver ejemplo1urlencode.php)
Cont…Paso de datos en PHP
 Metodo POST:
• Estructura y objetos de un formulario.
• La forma estandar de recuperar datos :
$HTTP_POST_VARS[<nombre de la variable>]
$_POST[<nombre de la variable>]
• Recuperando datos de objetos como:
TEXT (text.html).
HIDDEN (hidden.html).
TEXTAREA (textarea.html).
CHECKBOX (checkbox.html).
RADIO (radio.html).
LISTA SIMPLE (listasimple.html).
Cont.. Paso de datos en PHP
 Metodo POST:
• LISTA MULTIPLE (listamultiple.htm).

• FILE (file.html).
• SUBMIT (submit.html).
• PASSWORD (password.html).
Aplicando Sessiones
(ver el dir. sessiones)
• Dar un nombre a la sesión
session_name(<nombre>);
• Iniciar la sesión

session_start();
• Crear variables de sesión

$HTTP_SESSION_VARS[<nombre>]
$_SESSION[<nombre>]
• Recuperar variables de sesión
Aplicando Sesiones
• Matar variables de sesión
sesion_name(<nombre>);
session_start();
$_SESSION[<nombre>] = array();
session_unset();
session_destroy();
Aplicando Cookies
(ver el dir. cookies)
• Creando cookies
setcookie(<nombre>,<valor>,<expira>)
• Recuperando cookies

$HTTP_COOKIE_VARS (<nombre>];
$_COOKIE(<nombre>];
• Matando cookies

setcookie(<nombre>,””, time() );
Algunas Funciones Utiles
(ver ejemplo3 funciones utiles.php)

• Determinar si una variable existe


isset(<variable>);
• Determinar si una variable es nula

empty(<variable>);
• Destruir una variable

unset(<variable>);
Hablando sobre Array’s
(ver ejemplo4 arrays.php)
• Tipos de Array’s (asociativos y indexados)
• Array’s n dimensiones

is_array(<array>);
count(<array>);
array(<array>);
current(<array>);
reset(<array>);
list(<clave>,<valor>);
each(<array>);
Subir Archivos al Servidor
(ver el dir. Subir archivos)
• Creando el formulario de carga de archivos
• Procesando el archivo en el servidor

$_FILES[<nombre tmp>];
copy(<argv>);
Funciones de Fecha
 date (cadena de formato)

Devuelve valores de fecha y hora actuales


utilizando los parámetros para establecer el
formato de salida de los datos.
ejemplo:
<?
echo "Son las ", date("h : i : s")," y hoy es ", date("j-n-Y");
?>
Parámetros para date
 a - "am" o "pm"
 A - "AM" o "PM"
 d - día del mes, dos dígitos con cero a la izquierda; es
decir, de "01" a "31"
 D - día de la semana, en texto, con tres letras; por ejemplo,
"Fri"
 F - mes, en texto, completo; por ejemplo, "January"
 h - hora, de "01" a "12"
 H - hora, de "00" a "23"
 g - hour, sin ceros, de "1" a "12"
 G - hour, sin ceros; de "0" a "23"
 i - minutos; de "00" a "59"
 j - día del mes sin cero inicial; de "1" a "31"
Cont.. Parámetros para date
 l ('L' minúscula) - día de la semana, en texto, completo;
por ejemplo, "Friday"
 m - mes; de "01" a "12"
 n - mes sin cero inicial; de "1" a "12"
 M - mes, en texto, 3 letras; por ejemplo, "Jan"
 s - segundos; de "00" a "59"
 w - día de la semana, en número, de "0" (domingo) a "6"
(sábado)
 Y - año, cuatro cifras; por ejemplo, "1999"
 y - año, dos cifras; por ejemplo, "99"
 z - día del año; de "0" a "365"
Manejando BD’s – MySql
(ver el dir. mysql)


Conectarse al Servidor de Base de Datos
$enlace = mysql_connect( <servidor>,<usuario>,<contraseña>);
• Conectarse a una determinada Base de Datos
$resultado = mysql_select_db(<BD>,<enlace>);
• Realizar consulta
$resultado = mysql_query(<consulta>,$enlace);
• Obtener numero de filas de la consulta
mysql_num_rows($resultado);
• Sacar los registros de la consulta
$registro = mysql_fetch_Array($resultado);
Manejando BD’s – PostgreSql
(ver el dir. postgresql)

• Conectarse al Servidor de Base de Datos


$enlace = pg_connect($host.$port.$dbname.$user.$password);
• Realizar consulta
$resultado = pg_exec($enlace,<consulta>);
$resultado = pg_query($enlace,<consulta>);
• Obtener numero de filas de la consulta
pg_num_rows($resultado
• Sacar los registros de la consulta
$registro = pg_fetch_Array($resultado);
Manejo de Archivos
(ver el dir. archivos)
• Apertura de un archivo de texto (r,w,a)
fopen(<apuntador>,<modo>);
• Operación de lectura, escritura y adición
• Cierre de un archivo de texto

fclose(<apuntador>);
• Lectura de archivos

fgets(<apuntador>, <tambuffer>);
• Escritura de un archivo de texto

fwrite(<apuntador>,<contenido>)
Objetos
(ver el dir. Poo)

• Crear una clase


class <nomClase>{
var <nomAtributo>;
function <nomClase> (<arg>) { ... }
function <nomMetodo> (<arg>) { ... }
}
• Usar this para trabajar con los atributos de clase
• Instanciando objetos con new
• Los atributos son publicos y no privado ni
Objetos
(ver el dir. Poo)
• Herencia
class <claseHijo> extends <claseHijo>{
var <nomAtributo>;
function <nomClase> (<arg>) { ... }
function <nomMetodo> (<arg>) { ... }
}
• No soporta herencia múltiple
• Existe el polimorfismo
• Conclusion: Los OBJ’s solo nos permiten agarrar
algunas de las características que hacen útil la POO.
Funciones de Email
 mail(<<destinatario>>,<<tema>>,<<mensaj
e>>)
 Para que resulte la función mail deberemos
tener configurado nuestro archivo de
configuración de php el archivo php.ini
Cont.. email
 SMTP string
– Usado bajo Windows únicamente: el nombre DNS o
dirección IP del servidor SMTP que debería usar PHP
para el envío de correo con la función mail().
 smtp_port int
– Usado bajo Windows únicamente: Número del puerto
para conectarse al servidor especificado en el parámetro
SMTP cuando se envíe correo con mail(); su valor
predeterminado es 25. Se encuentra disponible solo a
partir de PHP 4.3.0.

También podría gustarte