0% encontró este documento útil (0 votos)
4 vistas19 páginas

8.lenguaje de Programaciã N PHP

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas19 páginas

8.lenguaje de Programaciã N PHP

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 19

Introducción a las tecnologías de la información

__________________________________________________________________________________________________________

8. L enguaj e de pr ogr amación PHP.

I N T R OD U CCI ÓN A L A P R OGR AMACI ÓN E N P H P

PHP es uno de los lenguaj es de lado del s er vidor más ex tendidos en la r ed. Nacido
en 1994, s e tr ata de un lenguaj e de cr eación r elativamente r eciente que ha tenido
una gr an aceptación debido s obr e todo a s u potencia y s implicidad .

PHP nos per mite embeber los fr agmentos de s u código dentr o de páginas HT ML y
r ealiz ar deter minadas acciones de una for ma fácil y eficaz s in tener que gener ar
pr ogr amas pr ogr amados íntegr amente en un lenguaj e dis tinto al HT ML . Por otr a
par te, y es aquí donde r es ide s u mayor inter és con r es pecto a lenguaj es pens ados
par a los CGI , PHP ofr ece un s infín de funciones par a la ex plotación de bas es de
datos de una maner a s encilla.

Otr o conocido lenguaj e de pr ogr amación es AS P. S i bien PHP y AS P s on lenguaj es


par ecidos en cuanto a potencia y dificultad, s u s intax is difier e s ens iblemente.
Algunas de s us difer encias pr incipales s on:

♣ PHP, aunque multiplatafor ma, ha s ido concebido inicialmente par a entor nos
UNÍ S y es en es te s is tema oper ativo donde s e pueden apr ovechar mej or s us
pr es taciones . AS P, s iendo una tecnología Micr os oft, es tá or ientado hacia
s is temas Windows , es pecialmente NT .
♣ Las tar eas pr incipales que puede r ealiz ar dir ectamente el lenguaj e s on definidas
en PHP como funciones mientr as que AS P invoca más fr ecuentemente los
obj etos . Por s upues to, es to no es más que una s imple cues tión de for ma ya que
ambos lenguaj es s opor tan igualmente ambos pr ocedimientos .
♣ AS P r ealiz a numer os as tar eas s ir viéndos e de componentes (obj etos ) que deben
s er compr ados a empr es as es pecializ adas o pr ogr amados por el s er vidor . PHP
pr es enta una filos ofía totalmente difer ente, es pr ogr es ivamente cons tr uido por
los us uar ios que implementan nuevas funciones en nuevas ver s iones del
lenguaj e.

B R E VE H I S T OR I A D E P H P

PHP es un lenguaj e cr eado por una gr an comunidad de per s onas . E l s is tema fue
des ar r ollado or iginalmente en el año 1994 por Ras mus Ler dor f como un CGI en C
que per mitía la inter pr etación de un númer o limitado de comandos . El s is tema fue
denominado Per s onal Home Page T ools y adquir ió r elativo éx ito gr acias a que otr as
per s onas pidier on a R as mus poder utiliz ar los pr ogr amas que des ar r olló en s us
pr opias páginas . Dada la aceptación del pr imer PHP y de maner a adicional, s u
cr eador dis eñó un s is tema par a pr oces ar for mular ios al que le atr ibuyó el nombr e
de FI (For m I nter pr eter ) y el conj unto de es tas dos her r amientas s er ía la pr imer a
ver s ión compacta del lenguaj e PHP/FI .

La s iguiente contr ibución al lenguaj e s e r ealiz ó a mediados del 97 cuando s e volvió


a pr ogr amar el analiz ador s intáctico, s e incluyer on nuevas funcionalidades como el
s opor te a nuevos pr otocolos de I nter net y el s opor te a la gr an mayor ía de las bas es
de datos comer ciales . T odas es tas mej or as s entar on las bas es de PHP ver s ión 3.
Actualmente PHP s e encuentr a en s u ver s ión 4, que utiliz a el motor Z end,
des ar r ollado con mayor meditación par a cubr ir las neces idades actuales y

- 54 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

s olucionar algunos inconvenientes de la anter ior ver s ión. Algunas mej or as de es ta


nueva ver s ión s on s u r apidez , gr acias a que pr imer o s e compila y luego s e ej ecuta
mientr as que antes s e ej ecutaba mientr as s e inter pr etaba el código, s u mayor
independencia del s er vidor web, cr eando ver s iones de PHP nativas par a más
platafor mas , y un API más elabor ado y con más funciones .

En los últimos años el númer o de s er vidor es que utiliz an PHP s e ha dis par ado
logr ando s ituar s e por encima de 5 millones de s itios y más de 800.000 dir ecciones
I P. E l hecho de que PHP s e haya conver tido en una tecnología popular s e debe,
entr e otr as r az ones , a que es el complemento ideal par a que el tándem L inux -
Apache s ea compatible con la pr ogr amación del lado del s er vidor de s itios web.
Gr acias a la aceptación logr ada y a los es fuer z os r ealiz ados por una cr eciente
comunidad de colabor ador es par a implementar lo de la maner a más óptima,
podemos as egur ar que es te lenguaj e s e conver tir á en un es tándar de éx ito entr e
los s is temas des ar r ollados en código abier to.

P H P : L E NGU AJE D E L L AD O D E L S E R VI D OR

E l navegador es una es pacie de aplicación capaz de inter pr etar las ór denes


r ecibidas en for ma de código HT ML , fundamentalmente, y conver tir las en páginas
que s on el r es ultado de dicha or den.

Al pinchar s obr e un enlace hiper tex to lo que pas a es que es tablecemos una petición
de un ar chivo HT ML r es idente en el s er vidor (un or denador que s e encuentr a
continuamente conectado a la r ed) el cual es enviado e inter pr etado por nues tr o
navegador (el cliente).

S i la página que pedimos no es un ar chivo HT ML, el navegador es incapaz de


inter pr etar la y lo único que es capaz es de s alvar la en for ma de ar chivo. Es por ello
que s i quer emos emplear lenguaj es acces or ios par a r ealiz ar un s itio web, es
abs olutamente neces ar io que s ea el pr opio s er vidor quien los ej ecute e inter pr ete
par a luego enviar los al cliente en for ma de ar chivo HT ML totalmente legible por él.

As í pues tenemos lenguaj es de lado s er vidor , que s on aquellos r econocidos ,


ej ecutados e inter pr etados por el pr opio s er vidor y que s e envían al cliente en un
for mato compr ens ible por él , y lenguaj es de lado cliente (entr e los que no s ólo s e
encuentr a HT ML s ino también Java y JavaS cr ipt los cuales s on s implemente
incluidos en el código HT ML ), que s on dir ectamente “diger idos ” por el navegador y
no neces itan un pr etr atamiento.

Cada tipo tiene s us ventaj as e inconvenientes . As í un lenguaj e de lado cliente es


totalmente independiente del s er vidor lo cual per mite, por ej emplo, que la página
pueda s er alber gada en cualquier s itio s in neces idad de pagar más ya que, por
r egla gener al, los s er vidor es que aceptan páginas con s cr ipts de lado s er vidor s on
en s u mayor ía de pago o s us pr es taciones s on muy limitadas . I nver s amente, un
lenguaj e de lado s er vidor es independiente del cliente por lo que es mucho menos
r ígido r es pecto al cambio de un navegador a otr o o r es pecto a las ver s iones del
mis mo. Por otr a par te, los s cr ipts s on almacenados en el s er vidor de quien los
ej ecuta y tr aduce a HT ML por lo que per manecen ocultos par a el cliente. Es te hecho
puede r es ultar una for ma legítima de pr oteger el tr abaj o intelectual r ealiz ado.

En el dominio de la r ed, los lenguaj es de lado s er vidor más ampliamente utiliz ados
par a el des ar r ollo de páginas dinámicas s on el AS P, PHP y PERL.

- 55 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

PERL es el lenguaj e más r ápido y potente por lo que obviamente r equier e un


apr endiz aj e más lar go quedando más r es er vado par a per s onas ya familiar iz adas
con la pr ogr amación.

E l AS P (Active S er ver Pages ) es un lenguaj e der ivado del Vis ual B as ic des ar r ollado
por Micr os oft. Evidentemente s u empleo s e r ealiz a s obr e platafor mas funcionando
baj o s is tema Windows NT .

E l PHP podr ía s er cons ider ado como un lenguaj e análogo al AS P utiliz ado en
platafor mas U nix y L inux .

Es tos dos lenguaj es r es ultan bas tantes útiles par a la ex plotación de bas es de datos
y s u apr endiz aj e es acces ible par a una per s ona pr ofana en pr ogr amación.
Cualquier a de ellos r es ultar ía una buena opción a la hor a de hacer evolucionar un
s itio web r ealiz ado en HT ML.

T AR E AS P R I N CI P AL E S D E L P H P

En un pr incipio dis eñado par a r ealiz ar un poco más que un contador y un libr o de
vis itas , PHP ha ex per imentado en poco tiempo una ver dader a r evolución y, a par tir
de s us funciones , en es tos momentos per mite r ealiz ar una multitud de tar eas útiles
par a el des ar r ollo web:

 Ges t i ón de bas es de dat os

Res ulta difícil concebir un s itio actual, potente y r ico en contenido que no s ea
ges tionado por una bas e de datos . E l lenguaj e PHP ofr ece inter faces par a el acces o
a la mayor ía de las bas es de datos comer ciales y por ODB C a todas las bas es de
datos pos ibles en s is temas Micr os oft, a par tir de las cuales podr emos editar el
contenido de nues tr o s itio con abs oluta s encillez .

Efectivamente uno de los puntos fuer tes de las páginas en PHP es la pos ibilidad de
ex plotar bas es de datos mediante funciones de una s implicidad y potencia muy
agr adecidas . Es tas bas es de datos pueden s er vir a nues tr o s itio par a almacenar
contenidos de una for ma s is temática que nos per mita clas ificar los , bus car los y
editar los de una for ma fácil y r ápida. La bas e de datos más difundida con el tandem
UNI X- Apache es s in duda MyS QL , ex is tiendo una ver s ión dis ponible par a Windows .

 Ges t i ón de ar ch i vos

Cr ear , bor r ar , mover , modificar ,...cualquier tipo de oper ación más o menos
r az onable que s e nos pueda ocur r ir puede s er r ealiz ada a par tir de una amplia
libr er ía de funciones par a la ges tión de ar chivos por PHP. T ambién podemos
tr ans fer ir ar chivos por F T P a par tir de s entencias en nues tr o código, pr otocolo par a
el cual PHP ha pr evis to también gr an cantidad de funciones .

 T r at am i en t o de i m ágen es

Evidentemente r es ulta mucho más s encillo utiliz ar Photos hop par a el tr atamiento de
imágenes per o PHP es útil, por ej emplo, cuando tenemos que tr atar gr an cantidad
de imágenes enviadas por nues tr os inter nautas . Puede r es ultar muy tedios o
unifor mar en tamaño y for mato miles de imágenes r ecibidas día tr as día per o con
PHP podemos automatiz ar lo eficaz mente.

- 56 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

 F u n ci on es de cor r eo el ect r ón i co

Podemos , con gr an facilidad, enviar un e- mail a una per s ona o lis ta par ametr iz ando
toda una s er ie de as pectos tales como el e- mail de pr ocedencia, as unto, per s ona a
r es ponder ,...

Muchas otr as funciones pens adas par a I nter net (tr atamiento de cookies , acces os
r es tr ingidos , comer cio electr ónico,...) o par a pr opós ito gener al (funciones
matemáticas , ex plotación de cadenas , de fechas , cor r ección or togr áfica,
compr ens ión de ar chivos , botones dinámicos ,...) s on r ealiz adas por es te lenguaj e. A
es ta inmens a libr er ía cabe ahor a añadir todas las funciones per s onales que uno va
cr eando por neces idades pr opias y que luego s on r eutiliz adas en otr os s itios y todas
ellas inter cambiadas u obtenidas en for os o s itios es pecializ ados .

I N S T AL ACI ÓN D E P H P E N N U E S T R O S E R VI D OR

Como todo leguaj e del lado del s er vidor , PHP r equier e de la ins talación de un
s er vidor en nues tr o PC par a poder tr abaj ar en local. Es te modo de tr abaj o es
evidentemente más pr áctico que colgar los ar chivos por FT P en el s er vidor y
ej ecutar los des de nues tr o navegador .

As í pues , antes de cr ear pr ogr amas en PHP, neces itamos :

♣ Conver tir nues tr o or denador en un s er vidor . Es to s e hace ins talando uno de


los var ios s er vidor es dis ponibles par a el s is tema oper ativo de nues tr a
máquina.
♣ I ntr oducir en nues tr o s er vidor los ar chivos que le per mitir án la compr ens ión
del PHP.

S i quer emos tr abaj ar con PHP una pos ibilidad par a los us uar ios de Windows es
ins talar Apache como s er vidor web lo cual r es ulta más ventaj os o con r es pecto al
us o del PWS ya que PHP es tá es pecialmente dis eñado par a cor r er en es te s er vidor .
Es to quier e decir que, aunque en pr incipio todo deber ía funcionar cor r ectamente en
ambos s er vidor es , es pos ible que algún bug no cor r egido haga fallar uno de
nues tr os s cr ipts s i tr abaj amos par a un s er vidor cuyas actualiz aciones s on menos
fr ecuentes y detalladas .

Aunque las mej or es pr es taciones de es te lenguaj e s on obtenidas tr abaj ando en


entor no UNI X con un s er vidor Apache, par a fines de des ar r ollo local podemos
contentar nos con emplear la ver s ión Windows .

S I N T AXI S D E P H P

PHP s e es cr ibe dentr o de la pr opia página web, j unto con el código HT ML y, como
par a cualquier otr o tipo de lenguaj e incluido en un código HT ML, en PHP
neces itamos es pecificar cuáles s on las par tes cons titutivas del código es cr itas en
es te lenguaj e. Es to s e hace, como en otr os cas os , delimitando nues tr o código por
etiquetas . Podemos utiliz ar dis tintos modelos de etiquetas :

<? y ?>
<% y %>
< ?php y ?>
< s cr ipt languaj e= " php" >

- 57 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

E l ultimo modo es tá pr incipalmente acons ej ado par a tr abaj ar con Fr ont Page ya
que, us ando cualquier otr o tipo de etiqueta, cor r emos el r ies go de que la aplicación
nos la bor r e s in más debido a que s e tr ata de un código incompr ens ible par a ella.

E l modo de funcionamiento de una página PHP, a gr andes r as gos , no difier e del


clás ico par a una página dinámica de lado s er vidor : E l s er vidor va a r econocer la
ex tens ión cor r es pondiente a la página PHP (phtml, php, php4,...) y antes de
enviar la al navegador va a encar gar s e de inter pr etar y ej ecutar todo aquello que s e
encuentr e entr e las etiquetas cor r es pondientes al lenguaj e PHP. E l r es to, lo enviar a
s in más ya que, as umir á que s e tr ata de código HT ML abs olutamente compr ens ible
por el navegador .

Otr a car acter ís tica gener al de los s cr ipts en PHP es la for ma de s epar ar las dis tintas
ins tr ucciones . Par a hacer lo, hay que acabar cada ins tr ucción con un punto y coma
" ; " . Par a la ultima ex pr es ión, la que va antes del cier r e de etiqueta, es te
for malis mo no es neces ar io.

Un elemento impor tante s on los comentar ios . Un comentar io es una fr as e o palabr a


que nos otr os incluimos en el código par a compr ender lo más fácilmente al volver lo a
leer un tiempo des pués y que, por s upues to, el or denador tiene que ignor ar ya que
no va dir igido a él s ino a nos otr os mis mos . L a for ma de incluir es tos comentar ios es
var iable dependiendo s i quer emos es cr ibir una línea o más . Veamos es to con un
pr imer ej emplo de s cr ipt:

<?
$mens aj e= " hola! ! " ; //Comentar io de una linea
echo $mens aj e; # Es te comentar io también es de una linea
/* En es te cas o
mi comentar io ocupa
var ias lineas * /
?>

S i us amos doble bar r a // o el s ímbolo # podemos intr oducir comentar ios de una
línea. Mediante /* y * / cr eamos comentar ios multilínea. Par a compr ender el s cr ipt
adelantamos que las var iables en PHP s e definen anteponiendo un s ímbolo de dólar
($) y que la ins tr ucción echo s ir ve par a s acar en pantalla lo que hay es cr ito a
continuación.

Var i abl es en P H P

Par a PHP, las var iables s on definidas anteponiendo el s ímbolo dólar ($) al nombr e
de la var iable que es tábamos definiendo.

Dependiendo de la infor mación que contenga, una var iable puede s er cons ider ada
de uno u otr o tipo:

• Var iables numér icas . Almacenan númer os , p.ej .:


- Enter os . Númer os s in decimales : $enter o= 2003.
- Real. Númer os con o s in decimales : $r eal= 3.1416.
• Var iables alfanumér icas . Almacenan tex tos compues tos de númer os y/o
cifr as .
- Cadenas . Almacenan var iables alfanumér icas : $cadena= ”hola,¿qué
tal?”.
• T ablas . Almacenan s er ies de infor mación numér icas y/o alfanumér icas .
- Ar r ays . Guar dan tablas : $s entido[1]= ”oído”;
$s entido[2]= ”vis ta”;

- 58 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

$s entido[3]= ”olfato”;
$s entido[4]= ”gus to”;
$s entido[5]= ”tacto”;

• Obj etos . S e tr ata de un conj unto de var iables y funciones as ociadas .

PHP pos ee una gr an flex ibilidad a la hor a de oper ar con var iables . En efecto,
cuando definimos una var iable as ignándole un valor , el or denador le atr ibuye un
tipo, p.ej .: $cadena= ”5”; //es to es una cadena , $enter o= 5; //es to es un enter o. S in
embar go hay que tener cuidado en no cambiar mayús culas por minús culas ya que,
en es te s entido, PHP es s ens ible.

Var i abl es de s is t em a

Dada s u natur alez a de lenguaj e de lado s er vidor , PHP es capaz de dar nos acces o a
toda una s er ie de var iables que nos infor man s obr e nues tr o s er vidor y s obr e el
cliente. La infor mación de es tas var iables es atr ibuida por el s er vidor y en ningún
cas o nos es pos ible modificar s us valor es dir ectamente mediante el s cr ipt. Par a
hacer lo es neces ar io influir dir ectamente s obr e la pr opiedad que definen.
Ex is ten multitud de var iables de es te tipo. Veamos algunas de es tas var iables y la
infor mación que nos apor tan:

- $HT T P_ US ER_ AGENT . Nos infor ma pr incipalmente s obr e el s is tema


oper ativo y tipo y ver s ión de navegador utiliz ado por el inter nauta.

- $HT T P_ ACCEPT _ LANGUAGE . Nos devuelve la o las abr eviaciones de


la lengua cons ider ada como pr incipal por el navegador .

- $HT T P_ REF ERER . Nos indica la URL des de la cual el inter nauta ha
tenido acces o a la página.

- $PHP_ S EL F. Nos devuelve una cadena con la URL del s cr ipt que es tá
s iendo ej ecutada.

- $HT T P_ COOK I ES _ VARS . S e tr ata de un ar r ay que almacena los


nombr es y contenidos de las cook ies . Ver emos qué s on más
adelante.

- $REMOT E_ ADDR. Mues tr a la dir ección I P del vis itante.

- $PHPS ES S I D. Guar da el identificador de s es ión del us uar io. Ver emos


más adelante en qué cons is ten las s es iones .

T abl as en P H P

Un ar r ay es una var iable que es tá compues ta de var ios elementos cada uno de ellos
catalogado dentr o de ella mis ma por medio de una clave. E l ej emplo vis to antes
er a:

$s entido[1]= ”oído”;
$s entido[2]= ”vis ta”;
$s entido[3]= ”olfato”;
$s entido[4]= ”gus to”;
$s entido[5]= ”tacto”;

- 59 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

En es te cas o el ar r ay cataloga s us elementos , comunmente llamados valor es , por


númer os . L os númer os del 1 al 5 s on por lo tanto las claves y los s entidos s on los
valor es as ociados . Nada nos impide emplear nombr es (cadenas ) par a clas ificar los .
Lo único que deber emos hacer es entr ecomillar los :

<?
$moneda[" es pana" ]= " Madr id" ;
$moneda[" fr ancia" ]= " Par ís " ;
$moneda[" italia" ]= " R oma" ;
?>

Otr a for ma de definir idénticamente es te mis mo ar r ay y que nos puede ayudar par a
la cr eación de ar r ays más complej os es la s iguiente s intax is :

<?
$moneda= ar r ay(" es pana" = > " Madr id" ," fr ancia" = > " Par ís " ,
" italia" = > " R oma" );
?>

Una for ma muy pr áctica de almacenar datos es mediante la cr eación de ar r ays


multidimens ionales (tablas ). Veamos el ej emplo s iguiente: quer emos almacenar
dentr o de una mis ma tabla el nombr e, capital y lengua hablada en cada país . Par a
hacer lo podemos emplear un ar r ay llamado país que vendr á definido por es tas tr es
car acter ís ticas (claves ). Par a cr ear lo, deber íamos es cr ibir una ex pr es ión del mis mo
tipo que la vis ta anter ior mente en la que meter emos una ar r ay dentr o del otr o.
Es te pr oces o de incluir una ins tr ucción dentr o de otr a s e llama anidar y es muy
cor r iente en pr ogr amación:

<?
$pais = ar r ay
(
" es pana" = > ar r ay
(
" nombr e" = > " Es paña" ,
" lengua" = > " Cas tellano" ,
" capital" = > " Madr id"
),
" fr ancia" = > ar r ay
(
" nombr e" = > " Fr ancia" ,
" lengua" = > " Fr ancés " ,
" capital" = > " Par ís "
)
);
echo $pais [" es pana" ] [" capital" ] //S aca en pantalla: " Madr id"
?>

Como puede ver s e, en es ta s ecuencia de s cr ipt, no hemos intr oducido punto y


coma " ; " al final de cada línea. Es to es s implemente debido a que lo que hemos
es cr ito puede s er cons ider ado como una s ola ins tr ucción.

Es te pr ogr ama nos per mite almacenar tablas y, a par tir de una s imple petición,
vis ualiz ar un deter minado valor en pantalla. Per o la utilidad de los ar r ays no acaba
aquí, s ino que también podemos utiliz ar toda una s er ie de funciones cr eadas par a
or denar los por or den alfabético dir ecto o inver s o, por claves , contar el númer o de
elementos que componen el ar r ay además de poder mover nos por dentr o de él
hacia delante o atr ás . Algunas de es tas funciones s on:

- 60 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

- ARRAY_ VALUES (MI _ ARRAY). L is ta los valor es contenidos en


mi_ ar r ay.
- AS ORT (MI _ ARRAY) Y ARS ORT (MI _ ARRAY). Or dena por or den
alfabético dir ecto o inver s o en función de los valor es .
- COUNT (MI _ ARRAY). Nos da el númer o de elementos de nues tr o
ar r ay.
- K S ORT (MI _ ARRAY) Y K RS ORT (MI _ ARRAY). Or dena por or den
alfabético dir ecto o inver s o en función de las claves .
- LI S T ($VARI AB LE1, $VARI AB L E2...)= MI _ ARRAY. As igna cada una
var iable a cada uno de los valor es del ar r ay.
- NEXT (MI _ ARRAY), PREV(MI _ ARRAY), RE S ET (MI _ ARRAY) y
END(MI _ ARRAY). Nos per miten mover nos por dentr o del ar r ay con un
punter o hacia delante, atr ás y al pr incipio y al final.
- EACH(MI _ ARRAY). Nos da el valor y la clave del elemento en el que
nos encontr amos y mueve al punter o al s iguiente elemento.

De gr an utilidad es también el bucle FOR EACH que r ecor r e de for ma s ecuencial el


ar r ay de pr incipio a fin.

Caden as

Las cadenas s on infor mación de car ácter no numér ico (tex tos , por ej emplo). Par a
as ignar a una var iable un contenido de es te tipo, lo es cr ibir emos entr e comillas
dando lugar a declar aciones de es te tipo:

$cadena= " Es ta es la infor mación de mi var iable"

Podemos yux taponer o concatenar var ias cadenas poniendo par a ello un punto
entr e ellas :

<?
$cadena1= " Hola" ;
$cadena2= " ¿Qué tal?" ;
$cadena3= $cadena1.$cadena2;
echo $cadena3 //E l r es ultado es : " Hola ¿Qué tal?"
?>

T ambién podemos intr oducir var iables dentr o de nues tr a cadena:

<?
$a= 55;
$mens aj e= " T engo $a años " ;
echo $mens aj e //El r es ultado es : " T engo 55 años "
?>

En es te cas o el s ímbolo $ define una var iable per o puede inter es ar nos meter lo por
r az ones comer ciales s ignificando dólar . Pues bien, par a meter és te y otr os
car acter es utiliz ados por el lenguaj e dentr o de las cadenas y no confundir los , lo que
hay que hacer es es cr ibir una contr abar r a delante:

- \$. Es cr ibe dólar en la cadena.


- \" . Es cr ibe comillas en la cadena.
- \\. Es cr ibe contr abar r a en la cadena.

- 61 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

- \8/2. Es cr ibe 8/2 y no 4 en la cadena.

Además , ex is ten otr as utilidades de es ta contr abar r a que nos per miten intr oducir
en nues tr o documento HT ML deter minados eventos :

- \t. I ntr oduce una tabulación en nues tr o tex to.


- \n. Cambiamos de línea.
- \r . Retor no de car r o.

Es tos cambios de línea y tabulaciones tienen únicamente efecto en el código y no


en el tex to ej ecutado por el navegador . As í s i quer emos que nues tr o tex to
ej ecutado cambie de línea hemos de intr oducir " < br > " y no " \n" ya que es te ultimo
s ólo cambia de línea en el ar chivo HT ML cr eado y enviado al navegador cuando la
página es ej ecutada en el s er vidor .

Las cadenas pueden as imis mo s er tr atadas por medio de funciones de todo tipo,
ex is ten muchas pos ibles acciones que podemos r ealiz ar s obr e ellas : dividir las en
palabr as , eliminar es pacios s obr antes , localiz ar s ecuencias , r emplaz ar car acter es
es peciales por s u cor r es pondiente en HT ML o inclus o ex tr aer las etiquetas MET A de
una página web.

F u n ci on es

Una función puede s er definida como un conj unto de ins tr ucciones que ex plotan
cier tas var iables par a r ealiz ar una tar ea más o menos elemental.

PHP bas a s u eficacia pr incipalmente en es te tipo de elemento. Una gr an libr er ía que


cr ece cons tantemente, a medida que nuevas ver s iones van s ur giendo, es
complementada con las funciones de pr opia cos echa dando como r es ultado un
s infín de r ecur s os que s on aplicados por una s imple llamada.

Las funciones integr adas en PHP s on muy fáciles de utiliz ar . T an s ólo hemos de
r ealiz ar la llamada de la for ma apr opiada y es pecificar los par ámetr os y/o var iables
neces ar ios par a que la función r ealice s u tar ea.

Lo que puede par ecer liger amente más complicado, per o que r es ulta s in lugar a
dudas muy pr áctico, es cr ear nues tr as pr opias funciones . De una for ma gener al,
podr íamos cr ear nues tr as pr opias funciones par a conectar nos a una bas e de datos o
cr ear los encabez ados o etiquetas meta de un documento HT ML. Par a una
aplicación de comer cio electr ónico podr íamos cr ear por ej emplo funciones de
cambio de una moneda a otr a o de calculo de los impues tos a añadir al pr ecio de
ar ticulo. En definitiva, es inter es ante cr ear funciones par a la mayor ía de acciones
más o menos s is temáticas que r ealiz amos en nues tr os pr ogr amas .

Veamos por ej emplo la cr eación de una función que, llamada al comienz o de


nues tr o s cr ipt, nos cr ea el encabez ado de nues tr o documento HT ML y coloca el
titulo que quer emos a la página:

<?
Function hacer _ encabez ado($titulo)
{
$encabez ado= " < html> \n< head> \n\t< title> $titulo< /title> \n<
/head> \n" ;
echo $encabez ado;
}
?>

- 62 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

Es ta función podr ía s er llamada al pr incipio de todas nues tr as páginas de la


s iguiente for ma:

$titulo= " Mi web" ;


hacer _ encabez ado($titulo);

De es ta for ma automatiz amos el pr oces o de cr eación de nues tr o documento.

Por s upues to, es tas funciones ha de s er definidas dentr o del s cr ipt ya que no s e
encuentr an integr adas en PHP s ino que las hemos cr eado nos otr os . Es to en r ealidad
no pone ninguna pega ya que pueden s er incluidas des de un ar chivo en el que
ir emos almacenando las definiciones de las funciones que vayamos cr eando o
r ecopilando.

Es tos ar chivos en los que s e guar dan las funciones s e llaman libr er ías . La for ma de
incluir los en nues tr o s cr ipt es a par tir de la ins tr ucción r equir e o include:

r equir e(" libr er ia.php" ) o include(" libr er ia.php" )

Con t r ol del f l u j o en P H P

La pr ogr amación ex ige en muchas ocas iones la r epetición de acciones s uces ivas o
la elección de una deter minada s ecuencia y no de otr a dependiendo de las
condiciones es pecíficas de la ej ecución.

• Con di ci on es I F

Cuando quer emos que el pr ogr ama, llegado a un cier to punto, tome un camino
concr eto en deter minados cas os y otr o difer ente s i las condiciones de ej ecución
difier en, nos s er vimos del conj unto de ins tr ucciones if, els e y els eif. La es tr uctur a
de bas e de es te tipo de ins tr ucciones es la s iguiente:

if (condición)
{
I ns tr ucción 1;
I ns tr ucción 2;
...
}
els e
{
I ns tr ucción A;
I ns tr ucción B;
...
}

Llegados a es te punto, el pr ogr ama ver ificar á el cumplimiento o no de la condición.


S i la condición es cier ta las ins tr ucciones 1 y 2 s er án ej ecutadas . De lo contr ar io
(els e), las ins tr ucciones A y B s er án llevadas a cabo.

Otr as condiciones pueden plantear s e dentr o de la condición pr incipal. Hablamos


entonces de condiciones anidadas que tendr ían una es tr uctur a del s iguiente tipo:

if (condición1)
{
I ns tr ucción 1;

- 63 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

I ns tr ucción 2;
...
}
els e
{
if (condición2)
{
I ns tr ucción A;
I ns tr ucción B ;
...
}
els e
{
I ns tr ucción X
...
}

De es te modo podr íamos intr oducir tantas condiciones como quer amos dentr o de
una condición pr incipal.

De gr an ayuda es la ins tr ucción els eif que per mite en una s ola línea intr oducir una
condición adicional. Es te tipo de ins tr ucción s implifica liger amente la s intax is que
acabamos de ver :

if (condición1)
{
I ns tr ucción 1;
I ns tr ucción 2;
...
}
els eif (condición2)
{
I ns tr ucción A;
I ns tr ucción B ;
...
}
els e
{
I ns tr ucción X
...
}
• B u cl es

S ir ven par a r ealiz ar una deter minada s ecuencia de ins tr ucciones un cier to númer o
de veces .

- B u cl e w h i l e. Es el bucle más utiliz ado y el más s encillo. S e us a par a


ej ecutar las ins tr ucciones contenidas en s u inter ior s iempr e y cuando
la condición definida s ea ver dader a. La es tr uctur a s intáctica es la
s iguiente:

while (condición)
{
ins tr uccion1;
ins tr uccion2;
...
}

- 64 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

Un ej emplo s encillo es es te bucle que aumenta el tamaño de la fuente


en una unidad a cada nueva vuelta por el bucle:

<?
$s iz e= 1;
While ($s iz e< = 6)
{
echo" < font s iz e= $s iz e> T amaño
$s iz e< /font> < br > \n" ;
$s iz e+ + ;
}
?>

En pr imer lugar s e define el valor de la var iable que vamos a evaluar


en la condición. E n es te cas o le hemos atr ibuido un valor de 1 que
cor r es ponde a la letr a más pequeña. A continuación s e cr ea el bucle
en el que imponemos la condición de que la var iable no ex ceda el
valor de 6. La ins tr ucción a ej ecutar es impr imir en nues tr o
documento un código HT ML en el que la etiqueta font y el mens aj e
que contiene var ían a medida que $s iz e cambia s u valor . F inalmente
s e incr ementa en una unidad el valor de $s iz e.

- B u cl e do/ w h i l e. La difer encia con r es pecto a los bucles while es que


es te tipo de bucle evalúa la condición al final con lo que, inclus o
s iendo fals a des de el pr incipio, és te s e ej ecuta al menos una vez . La
s intax is es la s iguiente:

do
{
ins tr uccion1;
ins tr uccion2;
...
}
while (condición)

- B u cl e f or . L a difer encia con los anter ior es r adica en cómo s e plantea


la condición de finaliz ación del bucle. Par a aclar ar s u funcionamiento
veamos el ej emplo de bucle while en for ma de bucle for :

<?
For ($s iz e= 1; $s iz e< = 6; $s iz e+ + )
{
echo" < font s iz e= $s iz e> T amaño
$s iz e< /font> < br > \n" ;
}
?>

Las ex pr es iones dentr o del par éntes is definen r es pectivamente:


inicializ ación de la var iable (valida par a la pr imer a vuelta del bucle),
condición de evaluación a cada vuelta (s i es cier ta, el bucle continua)
y acción a r ealiz ar al final de cada vuelta de bucle.

- B u cl e f or each . Es te bucle, implementado en las ver s iones de PHP4,


nos ayuda a r ecor r er los valor es de un ar r ay lo cual puede r es ultar
muy útil por ej emplo par a efectuar una lectur a r ápida del mis mo.

- 65 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

Recor damos que un ar r ay es una var iable que guar da un conj unto de
elementos (valor es ) catalogados por clave. La es tr uctur a gener al es
la s iguiente:

For each ($ar r ay as $clave= > $valor )


{
ins tr uccion1;
ins tr uccion2;
…;
}

• Oper ador es

Las var iables , como bas e de infor mación de un lenguaj e, pueden s er cr eadas ,
modificadas y compar adas con otr as por medio de los llamados oper ador es .

- Oper ador es ar i t m ét i cos . Nos per miten r ealiz ar oper aciones


numér icas con nues tr as var iables :

+ S uma
- Res ta
* Multiplicación
/ Divis ión
Devuelve el r es to de la
%
divis ión

- Oper ador es de com par aci ón . S e utiliz an pr incipalmente en las


condiciones par a compar ar dos var iables y ver ificar s i cumple o no la
pr opiedad del oper ador .

= = I gualdad
!= Des igual
< Menor que
< = Menor igual que
> Mayor que
> = Mayor igual que

- Oper ador es l ógi cos . S e us an en combinación con los oper ador es de


compar ación cuando la ex pr es ión de la condición lo r equier e.

And Y
Or O
! No

- Oper ador es de i n cr em en t o. S ir ven par a aumentar o dis minuir de


una unidad el valor de una var iable.

+ + $var iabl Aumenta de 1 el valor de


e $var iable
Reduce de uno el valor de
- - $var iable
$var iable

- 66 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

- Oper ador es com bi n ados . Una for ma habitual de modificar el valor


de las var iables es mediante los oper ador es combinados :

$var iable + = 10 S uma 10 a $var iable


$var iable -= 10 Res ta 10 a $var iable
$var iable .=
Concatena las cadenas $var iable y " añado"
" añado"

Es te tipo de ex pr es iones no s on más que abr eviaciones de otr as


for mas más clás icas : $var iable+ = 10 es lo mis mo que: $var iable =
$var iable+ 10

P as ar var i abl es por l a U R L

B ucles y condiciones s on muy útiles par a pr oces ar los datos dentr o de un mis mo
s cr ipt. S in embar go, en un s itio I nter net, las páginas vis tas y los s cr ipts utiliz ados
s on numer os os . Muy a menudo neces itamos que nues tr os dis tintos s cr ipts es tén
conectados unos con otr os y que s e s ir van de var iables comunes . Por otr o lado, el
us uar io inter acciona por medio de for mular ios cuyos campos han de s er pr oces ados
par a poder dar una r es pues ta. T odo es te tipo de factor es dinámicos han de s er
eficaz mente r egulados por un lenguaj e como PHP.

Las var iables de un s cr ipt tienen una validez ex clus iva par a dicho s cr ipt y r es ulta
impos ible cons er var s u valor cuando ej ecutamos otr o ar chivo dis tinto aunque
ambos es tén enlaz ados . Par a que la página des tino r econoz ca las var iables de otr a
página or igen es neces ar io intr oducir dichas var iables dentr o del enlace hiper tex to
de la página des tino. La s intax is en la página or igen s er ía la s iguiente:

<a hr ef= " des tino.php?var iable1= valor 1&var iable2= valor 2&..." > Mi
enlace< /a>

Como vemos es tas var iables no pos een el s ímbolo $ delante. Es to es debido a que
en r ealidad es te modo de pas ar var iables no es es pecífico de PHP s ino que es
utiliz ado por otr os lenguaj es .

P r oces ar var i abl es de f or m u l ar i os

Es te tipo de tr ans fer encia es de gr an utilidad ya que nos per mite inter accionar
dir ectamente con el us uar io.

E l pr oces o es s imilar al ex plicado par a las URLs . Pr imer amente, pr es entamos una
pr imer a página con el for mular io clás ico a r ellenar y las var iables s on r ecogidas en
una s egunda página que las pr oces a:

Pr imer a página:

< HT ML>
< HEAD>
< T I T LE> for mular io.html< /T I T L E>
< /HEAD>
< B ODY>

- 67 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

< FORM MET HOD= " POS T " ACT I ON= " des tino2.php" >
Nombr e< br >
< I NPUT T YPE= " T EXT " NAME= " nombr e" > < br >
Apellidos < br >
< I NPUT T YPE= " T EXT " NAME= " apellidos " > < br >
< I NPUT T YPE= " S UB MI T " >
< /F ORM>
< /B ODY>
< /HT ML>

S egunda página:

< HT ML>
< HEAD>
< T I T LE> des tino2.php< /T I T L E>
< /HEAD>
< B ODY>
<?
echo " Var iable \$nombr e: $nombr e < br > \n" ;
echo " Var iable \$apellidos : $apellidos < br > \n"
?>
< /B ODY>
< /HT ML>

U t i l i z aci ón de l as cooki es

Las cook ies s on unas infor maciones almacenadas por un s itio web en el dis co dur o
del us uar io. Es ta infor mación es almacenada en un ar chivo tipo tex to que s e guar da
cuando el navegador accede al s itio web.

La utilidad pr incipal de las cookies es la de poder identificar al navegador una vez


és te vis ita el s itio por s egunda vez y as í, en función del per fil del cliente dado en s u
pr imer a vis ita, el s itio puede adaptar s e dinámicamente a s us pr efer encias (lengua
utiliz ada, color es de pantalla, for mular ios r ellenados total o par cialmente,
r edir ección a deter minadas páginas ...).

Par a cr ear un ar chivo cook ies , modificar o gener ar una nueva cook ie lo podemos
hacer a par tir de la función S etCookie:

s etcook ie(" nombr e_ de_ la_ cook ie" ,valor ,ex pir acion);

Es impor tante que la cr eación de la cook ie s ea pr evia a la aper tur a del documento
HT ML. E n otr as palabr as , las llamadas a la función s etcook ie() deben s er colocadas
antes de la etiqueta HT ML.

Por otr a par te, es inter es ante s eñalar que el hecho de que definir una cookie ya
ex is tente implica el bor r ado de la antigua. Del mis mo modo, el cr ear una pr imer a
cook ie conlleva la gener ación automática del ar chivo tex to.

Par a utiliz ar el valor de la cook ie en nues tr os s cr ipts tan s ólo tendr emos que llamar
la var iable que define la cook ie. Hay que tener cuidado s in embar go de no definir
var iables en nues tr o s cr ipt con el mis mo nombr e que las cookies pues to que PHP
pr ivilegiar á el contenido de la var iable local con r es pecto a la cook ie y no dar á un
mens aj e de er r or .

- 68 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

S es i on es

Has ta ahor a hemos utiliz ado var iables que s ólo ex is tían en el ar chivo que er a
ej ecutado. Cuando car gábamos otr a página dis tinta, los valor es de es tas var iables
s e per dían a menos que nos tomás emos la moles tia de pas ar los por la URL o
ins cr ibir los en las cook ies o en un for mular io par a s u pos ter ior ex plotación. Es tos
métodos , aunque útiles , no s on todo lo pr ácticos que podr ían en deter minados
cas os en los que la var iable que quer emos cons er var ha de s er utiliz ada en var ios
s cr ipts difer entes y dis tantes los unos de los otr os .

Podr íamos pens ar que es e pr oblema puede quedar r es uelto con las cook ies ya que
s e tr ata de var iables que pueden s er invocadas en cualquier momento. E l pr oblema
es que las cook ies no s on aceptadas ni por la totalidad de los us uar ios ni por la
totalidad de los navegador es lo cual implica que una aplicación que s e s ir vier a de
las cook ies par a pas ar var iables de un ar chivo a otr o no s er ía 100% infalible. Es
impor tante a veces pens ar en " la inmens a minor ía" , s obr e todo en aplicaciones de
comer cio electr ónico donde debemos captar la mayor cantidad de clientes pos ibles
y nues tr os s cr ipts deben es tar pr epar ados ante cualquier eventual deficiencia del
navegador del cliente. Nos r es ulta pues neces ar io el poder declar ar cier tas var iables
que puedan s er r eutiliz adas tantas veces como quer amos dentr o de una mis ma
s es ión.

Pens emos en un car r ito de la compr a de una tienda vir tual donde el cliente va
navegando por las páginas del s itio y añadiendo los ar tículos que quier e compr ar a
un car r ito. Es te car r ito podr ía s er per fectamente una var iable de tipo ar r ay (tabla)
que almacena par a cada r efer encia la cantidad de ar tículos contenidos en el car r ito.
Es ta var iable deber ía s er obviamente cons er vada continuamente a lo lar go de todos
los s cr ipts .

Es te tipo de s ituaciones s on s olventadas a par tir de las var iables de s es ión. Una
s es ión es cons ider ada como el inter valo de tiempo empleado por un us uar io en
r ecor r er nues tr as páginas has ta que abandona nues tr o s itio o dej a de actuar s obr e
él dur ante un tiempo pr olongado o bien, s encillamente, cier r a el navegador .

PHP nos per mite almacenar var iables llamadas de s es ión que, una vez definidas ,
podr án s er utiliz adas dur ante es te laps o de tiempo por cualquier a de los s cr ipts de
nues tr o s itio. Es tas var iables s er án es pecificas del us uar io de modo que var ias
var iables s es ión del mis mo tipo, con dis tintos valor es , pueden es tar coex is tiendo
par a cada una de las s es iones que es tán teniendo lugar s imultáneamente. Es tas
s es iones tienen además s u pr opio identificador de s es ión que s er á único y
es pecífico.

Las var iables de s es ión s e difer encian de las var iables clás icas en que és tas r es iden
en el s er vidor , s on es pecificas de un s olo us uar io definido por un identificador y
pueden s er utiliz adas en la globalidad de nues tr as páginas .

Par a iniciar una s es ión podemos hacer lo de dos for mas dis tintas :

- Declar amos abier tamente la aper tur a de s es ión por medio de la función
s es s ion_ s tar t(). Es ta función cr ea una nueva s es ión par a un nuevo
vis itante o bien r ecuper a la que es tá s iendo llevada a cabo.
- Declar amos una var iable de s es ión por medio de la función
s es s ion_ r egis ter ('var iable'). Es ta función, además de cr ear o r ecuper ar la
s es ión par a la página en la que s e incluye también s ir ve par a intr oducir
una nueva var iable de tipo s es ión.

- 69 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

Las s es iones han de s er iniciadas al pr incipio de nues tr o s cr ipt. Antes de abr ir


cualquier etiqueta o de impr imir cualquier cos a. E n cas o contr ar io r ecibir emos un
er r or .

Un ej emplo de utiliz ación de una s es ión es un contador que deber á aumentar en


una unidad cada vez que r ecar gamos la página o puls emos el enlace:

<?
s es s ion_ r egis ter ('contador ');
?>
< HT ML>
< HEAD>
< T I T LE> contador .php< /T I T L E>
< /HEAD>
< B ODY>
<?
I f (is s et($contador )= = 0)
{ $contador = 0; }
+ + $contador ;
echo " < a hr ef= \" contador .php\" > Has r ecar gado es ta página
$contador veces < /a> " ;
?>
< /B ODY>
< /HT ML>

La condición if tiene en cuenta la pos ibilidad de que la var iable $contador no haya
s ido todavía inicializ ada. La función is s et s e encar ga de dar un valor cer o cuando
una var iable no ha s ido inicializ ada

T R AB AJAR CON B AS E S D E D AT OS E N P H P

Una de las pr incipales ventaj as que pr es enta el tr abaj ar con páginas dinámicas es
el poder almacenar los contenidos en bas es de datos . De es ta for ma, podemos
or ganiz ar los , actualiz ar los y bus car los de una maner a mucho más s imple.

E l lenguaj e PHP, ya hemos dicho, ofr ece inter faces par a el acces o a la mayor ía de
las bas es de datos comer ciales y por ODB C a todas las bas es de datos pos ibles en
s is temas Micr os oft, a par tir de las cuales podr emos editar el contenido de nues tr o
s itio con abs oluta s encillez .

Es ta inter acción s e r ealiz a, por un lado, a par tir de las funciones que PHP nos
pr opone par a cada tipo de bas e de datos y, por otr o es tableciendo un diálogo a
par tir de un idioma univer s al: S QL (S tr uctur ed Quer y L anguage) el cual es común a
todas las bas es de datos .

La bas e de datos más ex tendida en combinación con PHP es MyS QL debido s obr e
todo a s u gr atuidad, eficiencia y s implicidad.

Una vez ins talado MyS QL s er á neces ar io llevar a cabo las s iguientes oper aciones :

- I ntr oducidos dentr o de MyS QL, cr ear emos la bas e de datos ej emplo con
la s iguiente s entencia: cr eate databas e ej emplo;

- S eleccionar emos la bas e ej emplo como la bas e a utiliz ar : us e ej emplo;

- 70 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

- Cr ear emos a continuación la tabla clientes a par tir de la s iguiente


s entencia:

cr eate table clientes (


nombr e var char (100),
telefono var char (100)
);

Ahor a ya dis ponemos de una tabla vacía a la que podr emos hacer le las s iguientes
oper aciones :

o I n t r odu cci ón de n u evos r egi s t r os .

Una vez cr eada la tabla clientes en nues tr a bas e de datos ej emplo, el pas o
s iguiente s ea llenar la con r egis tr os . L os datos del r egis tr o pueden s er
r ecogidos , por ej emplo, a par tir de un for mular io.
Lo pr imer o que habr á que hacer es es tablecer un vínculo entr e el pr ogr ama
y la bas e de datos . Es ta conex ión s e lleva a cabo con la función
mys ql_ connect. A continuación, deber emos gener ar una or den de ins er ción
del r egis tr o en lenguaj e S QL. Es ta or den s er á ej ecutada por medio de la
función mys ql_ db_ quer y. En es ta función es pecificar emos pr imer amente la
bas e de datos s obr e la que quer emos actuar y a continuación intr oducir emos
la s entencia S QL.

<?
//Conex ion con la bas e
mys ql_ connect(" localhos t" ," tu_ us er " ," tu_ pas s wor d" );
//Ej ecucion de la s entencia S QL
mys ql_ db_ quer y(" ej emplo" ," ins er t into clientes
(nombr e,telefono) values ('$nombr e','$telefono')" );
?>

Los par ametr os us er y pas s wor d s on definidos por el cr eador de la bas e.

o S el ecci ón y l ect u r a de r egi s t r os .

Dentr o de una bas e de datos , or ganiz ada por tablas , la s elección de una
tabla enter a o de un cier to numer o de r egis tr os r es ulta una oper ación
r utinar ia.
Los pas os a r ealiz ar s on, en un pr incipio, los vis tos par a la ins er ción de un
r egis tr o: Conex ión a la bas e y ej ecución de la s entencia. S upongamos que la
infor mación de dicha ej ecución es almacenada en la var iable ($r es ult).
E l s iguiente pas o s er á plas mar en pantalla la infor mación r ecogida en
$r es ult. Es to lo har emos mediante la función mys ql_ fetch_ ar r ay que
devuelve una var iable ar r ay con los contenidos de un r egis tr o a la vez que
s e pos iciona s obr e el s iguiente.
La función mys ql_ fr ee_ r es ult s e encar ga de liber ar la memor ia utiliz ada par a
llevar a cabo la cons ulta.

o Act u al i z aci ón de u n r egi s t r o.

S upongamos que quer emos cambiar el numer o de teléfono de las dis tintas
per s onas pr es entes en nues tr a bas e. E l nombr e de es tas per s onas , as í como
el nuevo numer o de teléfono, s er án r ecogidos por medio de un for mular io.
E l ar chivo del for mular io puede s er un s cr ipt PHP en el que efectuar emos
una llamada a nues tr a bas e de datos par a cons tr uir un menú des plegable
donde apar ez can todos los nombr es .

- 71 -
Introducción a las tecnologías de la información
__________________________________________________________________________________________________________

La maner a de oper ar par a cons tr uir el menú des plegable es la mis ma que
par a vis ualiz ar la tabla, por ej emplo mediante un bucle while en combinación
con la función mys ql_ fetch_ ar r ay, y el s cr ipt de actualiz ación s er á
equivalente al de ins er ción.

o B or r ado de u n r egi s t r o con P H P

Otr a de las oper aciones elementales que s e pueden r ealiz ar s obr e una bas e
de datos es bor r ar un r egis tr o. Par a hacer lo, S QL nos pr opone s entencias del
tipo Delete. U na opción s er ía cr ear un menú des plegable dinámico, como
par a el cas o de las actualiz aciones , y a continuación hacer efectiva la
oper ación a par tir de la ej ecución de la s entencia S QL que cons tr uimos a
par tir de los datos un for mular io.

- 72 -

También podría gustarte