Especialista Web J9 Php
-
Upload
moises-cid-deza -
Category
Technology
-
view
2.610 -
download
0
description
Transcript of Especialista Web J9 Php
![Page 2: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/2.jpg)
PHP PHP Hipertext Preprocessor
Inicialmente en 1994: Personal Home Page
Lenguaje Open Source
Basado en C y C++
Multiplataforma (GNU/Linux, Windows, Mac)Independiente del Sistema Operativo Portable
Muy bien documentado http://www.php.net/
![Page 3: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/3.jpg)
PHP Usado en mas de 20 millones de dominios
![Page 4: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/4.jpg)
PHP Es un lenguaje de scripts que se ejecuta del lado
del servidor
Los scripts PHP están incrustados en los documentos html
El servidor los interpreta (procesa) y ejecuta antes de enviar las páginas al cliente
El cliente no ve el código PHP, sólo el código que produce
Estructura similar a ASP, JSP, CGI… Muy estandarizado en el uso con Apache y MySQL
![Page 5: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/5.jpg)
PHP
![Page 6: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/6.jpg)
PHP Primer ejemplo con php
<html>
<head>
<title>PHP – Hello World</title>
</head>
<body>
<?php
echo "Hello World!";
?>
</body>
</html>
![Page 7: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/7.jpg)
PHP Los script php se colocan entre
<?php //apertura?> //cierre
La mayoría de las instrucciones finalizan con “;”
Sentencia básicaecho “texto a mostrar”;
Comentarios con// Una sola línea/* Varias líneas */
![Page 8: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/8.jpg)
PHP Las variables se identifican con “$” Los nombres de las variables no pueden
comenzar con números ni con caracteres especiales//correcto //incorrecto
$mi_variable $_mivariable
$2variable
La variable toma el tipo de dato del valor que se le asigne
Tipos de datos: int, float, double, string, array, object
![Page 9: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/9.jpg)
PHP Ejemplo
<?php $un_bool = TRUE; // un valor booleano $un_str = "foo"; // una cadena $un_int = 12; // un entero
echo gettype($un_bool); // imprime: boolean
// Si este valor es un entero, incrementarlo en cuatro
if (is_int($un_int)) $un_int += 4;?>
![Page 10: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/10.jpg)
PHP Es posible concatenar variables (strings) con el operador “.”
<?php $mensaje1 = 'Hola'; $mensaje2 = 'mundo!'; echo $mensaje1.' '.$mensaje2; ?>
Con la función “unset()” podemos quitar el valor de una variable$var = "pepe"; unset($var); // Ahora no tiene valor (NULL)
La función “isset()” nos indica si una variable está inicializadaif (isset($var)){ echo 'Tiene valor';}
![Page 11: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/11.jpg)
PHP Condicionales: IF
if (<condición>){código si se cumple la condición}
else{código si no se cumple la condición}
Ejemplo
<?php$i = 6;if ($i < 10){
echo "menor de 10"; }else {
echo "mayor de 10"; }
?>
![Page 12: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/12.jpg)
PHP<HTML>
<HEAD><TITLE>Detector de Lengua</TITLE></HEAD><BODY>
<?//definimos variables$espanol="Hola";$ingles="Hello";
//Leemos del navegador su lengua oficial$idioma=substr($HTTP_ACCEPT_LANGUAGE,0,2);
//Formulamos las posibilidades que se pueden darif ($idioma == "es“) {
echo "$espanol";} else echo "$ingles“;?>
</BODY></HTML>
![Page 13: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/13.jpg)
PHP Condicionales: SWITCH
switch (<expresión>){case <valor 1>: //código para valor 1
break;case <valor 2>: //código para valor 2
break;...
case <valor n>: //código para valor n break;
default: // código por defecto break;
}
![Page 14: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/14.jpg)
PHP Ejemplo
<?php
$variable=2;
switch($variable) { case 1: echo '$Variable es igual a 1.';
break; case 2: echo '$Variable es igual a 2.';
break; case 3: echo '$Variable es igual a 3.';
break; default: echo '$Variable no igual ' . 'a 1, 2
o 3.'; } ?>
![Page 15: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/15.jpg)
PHP Bucles: While
Se ejecuta al código mientras se cumpla una condición
while (<condicion>) {//Código a ejecutar
}
Ejemplo
$a = 1;
while ( $a < 10) {
echo "<p>El número actual es $a</p>";
$a++;
}
![Page 16: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/16.jpg)
PHP Bucles: Do While
Se ejecuta al código mientras se cumpla una condición Al menos se ejecuta una vez
do {//Código a ejecutar
} while (<condicion>)
Ejemplo
$a = 0;do{ $a++; echo ('<p>El número es '.$a.'</p>');}while ( $a < 10);
![Page 17: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/17.jpg)
PHP Bucles: For
Se ejecuta al código mientras se cumpla una condición
for (inicialización; condición; actualización) { //código
}
Ejemplo
for ($i=1;$i<=100;$i++) {echo “$i <br>”;}
![Page 18: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/18.jpg)
PHP Bucles: Foreach
Se ejecuta un determinado código por cada uno de los elementos de una colección
Por ejemplo, si tenemos un array con n elementos:<?
$vector = array( "uno" => 1, "dos" => 2, "tres" => 3, "diecisiete" => 17 ); foreach($vector as $indice => $valor) { echo "$vector[$indice] => $valor.n"; } ?>
![Page 19: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/19.jpg)
PHP Funciones importantes
include (“archivo”)Llama al archivo para incrustar el código en la página. Puede ejecutarse o no al estar
dentro de un condicional
require(“archivo”)Llama al archivo para incrustar el código en la página. Este código se ejecuta siempre
A partir de la versión PHP 4.0.2 y posteriores esto cambia y ambas construcciones se comportan exactamente de la misma manera, con la única diferencia:
include solo da una advertencia, y sigue ejecutando el código require produce un error y interrumpe la ejecución.
header(“Location: paginaweb”)Redirecciona dinámicamente las página webSe utiliza al comienzo de un fichero HTML
exitFinaliza la ejecución del código
![Page 20: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/20.jpg)
PHP Ejemplo include
vars.php<?php
$color = 'verde';
$fruta = 'manzana';
?> test.php
<?php
echo "Una $fruta $color"; // Una
include 'vars.php';
echo "Una $fruta $color"; // Una manzana verde
?>
![Page 21: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/21.jpg)
PHP Matrices/Arrays
Es un tipo de dato, que contiene un conjunto de valores referenciados con un índice. $sentido[1]="ver";$sentido[2]="tocar";$sentido[3]="oir";$sentido[4]="gustar";$sentido[5]="oler";
Acceso a una posiciónecho ($sentido[1]); //devuelve “ver”
Creación de una matriz$sentidos= array(‘ver‘,‘tocar‘,‘oír’);$sentidos= array(1=>‘ver‘,2=>‘tocar‘,3=>‘oír‘);
![Page 22: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/22.jpg)
PHP Matrices/Arrays
Podemos crear elementos de una matriz sobre la marcha:
$matriz[7] = "Texto de la posición 7"; // si no especificamos un índice, se inserta en la siguiente posición
$matriz[] = "Esto iría en la posición 8";
Podemos eliminar elementos, o la matriz entera con "unset()“
$matriz = array(3 => 'Oso', 5 => 'Lagarto');
unset($matriz[3]); // No hay nada en la posición 3
unset($matriz); // No hay nada en la matriz
![Page 23: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/23.jpg)
PHP Funciones
function <nombre_función> ($param1, $param2, ...)
{
//código función
return <resultado>;
} Ejemplos
function negrita($texto) {
return '<b>'.$texto.'</b>';
}
echo 'Quiero '.negrita(‘destacar').' lo '.negrita('importante');
function sumar($num1,$num2){ $ suma=$ num1 +$num2 echo $num1."+".$num2."=".$suma; }
sumar(5,6)
![Page 24: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/24.jpg)
PHP Existen muchas bibliotecas de funciones en PHP Algunos ejemplos:
Funciones de manipulación de cadenas Funciones de fecha y hora Funciones de arrays Funciones de ficheros Funciones matemáticas Funciones de bases de datos Funciones de red
Algunas bibliotecas requieren la instalación de componentes adicionales
http://es2.php.net/manual/es/
![Page 25: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/25.jpg)
PHP Manejo de cadenas
chop(cadena): Devuelve la cadena de caracteres con los caracteres de blanco y nueva línea eliminados
trim(cadena): Elimina los blancos que aparecen a izquierda y derecha de la cadena de caracteres
str_repeat(caracter,numero_veces): Repite un caracter el numero de veces indicado
strtolower(cadena): Pasa toda la cadena a letras minúsculas strtoupper(cadena): Pasa toda la cadena a letras mayúsculas ucfirst(cadena): Pasa a mayúscula el primer caracter de una cadena str_replace(subcadena1,subcadena2,cadena): Sustituye una
palabra por otra dentro de una cadena strtr(cadena,originales,traducidos): Traduce ciertos
caracteres .Ejemplo: $persona=strt($persona,"áéíóú","a,e,i,o,u"); de esta forma cambiaría todas las vocales con acento por vocales sin acento.
substr_replace(cadena,nueva,comienzo,longitud): Sustituye una porción del contenido de una cadena
![Page 26: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/26.jpg)
PHP<?php echo strlen("12345"),"<br>";// devuelve 5 $palabras=split(" ","Esto es una prueba"); for($i=0;$palabras[$i];$i++) echo $palabras[$i],"<br>";// devuelve cada palabra en una fila echo substr("Devuelve una subcadena de otra",9,3),"<br><br>";// devuelve “una”
echo strpos("Busca la palabra en la frase", "palabra“);// devuelve 9
echo str_replace("verde","rojo","verde que te quiero verde .");// devuelve “rojo que te quiero rojo”; ?>
![Page 27: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/27.jpg)
PHP Manejo de fecha y hora
date: permite dar formato a una hora/fecha getdate: devuelve un array con los elementos
“seconds” = segundos“minutes” = minutos“hours” = horas“mday” = día del mes“wday” = día del mes en número“mon” = número del mes“year” = año“yday” = número de día del año, por ejemplo “125”“weekday” = día de la semana en letra (ingles), por ejemplo “Monday”“month” = mes en letra (ingles), por ejemplo “November”
time: Devuelve la fecha actual en formato timestamp de UNIX. Este formato es un número (int) que indica el número de segundos transcurridos desde las 00:00:00 del día 1 de enero de 1970 GMT.
![Page 28: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/28.jpg)
PHP<?php
$hora = time();echo ($hora);echo "<br>";// muestra “1241110230 "
$hora = getdate(time());echo( $hora["mday"] . "/" . $hora["mon"] . "/" . $hora["year"] ); echo "<br>";//muestra “30/4/2009”
echo($hora["hours"] .":”. $hora["minutes"] .":”. $hora["seconds"] ); //muestra 18:50:30
?>
![Page 29: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/29.jpg)
PHP Manejo ficheros
fopen ( archivo, modo): abre un fichero o URL (lectura/escritura/añadir…)$fp = fopen(’info.txt’, ’r’);
fclose ( int): Cierra un fichero abiertofclose ($fp);
copy(‘archivo.txt',‘directorio'): Copiar un archivo
if(copy('datos.txt',‘copia/datos.bak' )) {
echo "el fichero se copio con éxito.<br>"; } else echo "el fichero no se copio .<br>";
Unlink: Borra un fichero
unlink('datos.txt');
mkdir: crea un directorio rmdir: borra un directorio is_dir: dice si es un directorio is_file: dice si es un fichero
![Page 30: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/30.jpg)
PHP Manejo ficheros
<? //Abrimos el fichero en modo de escritura $DescriptorFichero = fopen("datos.txt","w");
//Escribimos la primera línea dentro de él $string1 = "Esta es la primera línea de texto"; fputs($DescriptorFichero,$string1);
//Escribimos la segunda línea de texto $string2 = "Y esta es la segunda línea de texto"; fputs($DescriptorFichero,$string2);
//Cerramos el fichero fclose($DescriptorFichero);?>
![Page 31: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/31.jpg)
PHP Excepciones
Permiten el control de errores Ejemplo
function division($dividendo, $divisor) {
if($divisor==0)
throw new Exception(‘Division entre cero!',0);
return $dividendo/$divisor;
}
try {
echo division(15,0);
} catch(Exception $e) {
echo “se ha producido un error: “. $e->getMessage();
}
![Page 32: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/32.jpg)
PHP Recuperar valores de formularios
Un formulario puede enviarse con el método "get" o "post" Se usa $_GET y $_POST Ejemplo: recuperar variables pasadas por URL
<html> <body> <?php foreach ($_GET as $nombre => $param) { ?> <p><?=$nombre.': '.$param?></p> <? } ?> </body> </html>
![Page 33: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/33.jpg)
PHP Ejemplo
Formulario<html>
<head> <title>Ejemplo de PHP</title> </head> <body>
<FORM ACTION="procesa2.phtml" METHOD="POST/GET"> Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR> Introduzca sus apellidos:<INPUT TYPE="text"
NAME="apellidos"><BR> <INPUT TYPE="submit" VALUE="Enviar">
</FORM> </body>
</html>
Recuperar datos<html>
<head> <title>Ejemplo de PHP</title> </head> <body>
El nombre por GET: <?php echo $_GET['nombre']," ",$_GET['apellidos'] ?><br> El nombre por POST: <?php echo $_POST['nombre']," ",$_POST['apellidos'] ?> </body>
</html>
![Page 34: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/34.jpg)
PHP Sesiones
Las sesiones básicamente son variables globales que nos permiten almacenar datos que necesiten volver a ser usados en otros accesos a la pagina
Usadas entre otras cosas en la validación de usuarios
1º.- Se crea el formulario de validación (login.php) 2º.- Se comprueba la validez del usuario (autenticacion.php) 3º.- Se crea la sesión y se da acceso al usuario o se deniega el mismo
![Page 35: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/35.jpg)
PHP
![Page 36: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/36.jpg)
PHP Sesiones (autenticacion.php)
<?php
//vemos si el usuario y contraseña son válidosif ($_POST["usuario"]=="usuario" && $_POST["contrasena"]=="123"){
//usuario y contraseña válidos
session_start();$_SESSION["autenticado"]= "SI";
// mayor seguridad almacenando ssesion_id()$_SESSION[“id_misesion"]= session_id();
header ("Location: aplicacion.php");
}else {
//si no existe se va a login.phpheader("Location: login.php?errorusuario=si");
}
?>
![Page 37: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/37.jpg)
PHP Sesiones (seguridad.php)
<?php
//Inicio la sesiónsession_start();
//COMPRUEBA QUE EL USUARIO ESTA AUTENTICADOif ($_SESSION["autenticado"] != "SI") {
//si no existe, va a la página de autenticacionheader("Location: login.php");
//salimos de este scriptexit();}
?>
Este código lo incluimos en todas las páginas que requieran validación
![Page 38: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/38.jpg)
PHP Conexión a BBDD
mysql_connect($hostname,$user,$password)
//cierre de conexión
mysql_close($conexion);
Ejemplo
<?php $servidor="localhost"; $login=“usuario": $password=“contraseña";
$db=“basededatos” $conexion=mysql_connect($servidor,$login,$password);
mysql_select_db($db, $conexion);
mysql_close($conexion);?>
![Page 39: Especialista Web J9 Php](https://reader033.fdocuments.ec/reader033/viewer/2022042623/54c9fa944a795997788b456a/html5/thumbnails/39.jpg)
PHP Sentencia BBDD
$result = mysql_query($query);
Ejemplo
$query="SELECT * FROM tabla";
$result=mysql_query($query,$conexion);
$numrows=mysql_num_rows($result);
while ($datos=mysql_fetch_array($result)){echo $datos["Nombre"], " - ", $datos["Direccion"] ,"<BR>" ;}echo "Numero de registros $numrows<br>";