PDF de programación - Implantacion de aplicaciones Web

Imágen de pdf Implantacion de aplicaciones Web

Implantacion de aplicaciones Webgráfica de visualizaciones

Publicado el 16 de Mayo del 2021
517 visualizaciones desde el 16 de Mayo del 2021
498,1 KB
19 paginas
Creado hace 11a (27/01/2013)
Implantación de aplicaciones Web

PHP se ejecuta en el servidor (en clase nuestro ordenador sera como si fuera el ordenador para pruebas), para
ejecutar php se usa el programa XAMPP, XAMPP viene de LAMP y WAMP.

• LAMP:
• WAMP:
• XAMPP:

Linux – Apache- MySql – PHP
Windows – Apache- MySql – PHP
Windows/Linux – Apache – MySql – PHP – Pearl

phpMyAdmin se ejecuta dentro del servidor y cuando un ordenador hace petición de una pagina web que
contiene php, este se ejecuta en el propio servidor y se envía como resultado dentro de las sentencias html
que si interpreta el navegador del ordenador que ha solicitado la pagina web.

Tras instalar XAMPP hay que activar MySql (xampp-control.exe) y se guardan los archivos en ????

Si no se Activa el Apache puede ser por culpa de algún servicio, en caso de tener Vmware instalado, en este
hay que desactivar en Edit – Preferences la opción Virtual machine sharing en 'disable'.

phpMyAdmin

Se accede poniendo en el navegador http://localhost/phpmyadmin/ y se crea una base de datos.

Diagrama relacional que servirá de ejemplo para crear las tablas correspondientes en phpMyAdmin

EMPLEADOS

(0,n)

*cod_emp
- nombre
-telef

1:N

pertenece

DPTOS

*num_dpto
- denominacion
-ubicacion

TEMPLEADOS (cod_emp, nombre, telef, num_dpto(FK))
TDATOS (num_dpto, denominacion, ubicacion)

Se crean las tablas:

Y se rellenan los campos (Nota: En el campo de cod_emp en Indice se pone PRIMAY, para identificarlo
como primary key) y se pincha en 'Grabar'.

Se crea la otra tabla:

Se pincha en bd_juan y en la pantalla que sale se pincha en diseñador

En la pantalla que sale en la parte de herramientas (parte superior) se selecciona crear relación.
Se relaciona como llave de referencia num_dpto de t_dptos y como llave extranjera (Foreign Key) num_dpto
de t_empleados.

Se hacen inserciones de datos, pinchando en 'insertar'

Como queda

Se meten algunos empleados de la misma manera con 'insertar'

Otro ejemplo.
Diagrama relacional que servirá de ejemplo para crear las tablas correspondientes en phpMyAdmin

ALUMNOS

*cod_alu
- nombre
-telefono
-cp

M:N

cursan

-nota

ASIGNATURAS

*cod_asig
- denominacion

TALUMNOS (cod_alu, nombre, telef, cp)
TASIGNATURAS (cod_asig, denominacion)
TNOTAS (cod_alu(FK), cod_asig(FK), nota)

La creación de tablas e inserción de datos es similar al ejemplo anterior.

Se introducen algunos datos.
Tabla t_alumnos

Tabla t_asignaturas

Tabla t_notas

Ahora con PHP accederemos a la tabla, veamos algunas opciones:

Primero conectamos con la base de datos y Si anteponemos @ no escribe el error por defecto:
@ $conexion = mysql_connect('localhost'/* servidor */, 'root'/* usuario */,''/* clave */);
if(!$conexion)
{
die("Imposible conectar. Error número ".mysql_errno().": ".mysql_error());
}
Si ocurre un error entonces sale el mensaje especificado y se para la aplicación


Abrimos la Base de datos de la siguiente manera (dos formas de hacerlo):
Opción 1
$bd_seleccionada=mysql_select_db('natxo');
if(!$bd_seleccionada)
{
die('Imposible abrir la BBDD: '.mysql_error());
}
Opción 2
mysql_select_db('bd_juan2') or die('Imposible abrir la BBDD: '.mysql_error());

Creamos la consulta (query)
$consulta='SELECT * FROM t_alumnos';

Mandamos la query al servidor de BBDD, Si algo ha ido mal, $resultado se interpreta como falso
$resultado=mysql_query($consulta) or die("Imposible consultar: ".mysql_error());

En este caso, que la consulta es una select, devuelve un objeto de tipo recurso que permite acceder al
resultado de la consulta. En otros casos, como DROP UPDATE... no se espera una colección de registros sino
algo del tipo cierto/falso
$num_filas=mysql_num_rows($resultado);
print "<p>La consulta ha devuelto $num_filas registros, tuplas o filas</p>";


Vamos sacando datos del recurso con alguna de las siguientes funciones:

➢ mysql_fetch_row: Obtiene una fila de resultados como un array numérico

✔ print "<pre>mysql_fetch_row(\$resultado):\n".print_r(mysql_fetch_row($resultado),true)."</pre>";

mysql_fetch_row($resultado):
Array
(
[0] => 453
[1] => JOSE MEJIAS
[2] => 657435687
[3] => 48743
)

➢ mysql_fetch_assoc: Recupera una fila de resultados como un array asociativo

✔ print "<pre>mysql_fetch_assoc(\$resultado):\n".print_r(mysql_fetch_assoc($resultado),true)."</pre>";

mysql_fetch_assoc($resultado):
Array
(
[cod_alu] => 440
[nombre] => ROSA SUAREZ
[telefono] => 675234536
[cp] => 48712
)

➢ mysql_fetch_array: Recupera una fila de resultados como un array asociativo, numérico o ambos.
✔ mysql_fetch_array($resultado,MYSQL_BOTH) Al utilizar MYSQL_BOTH (predeterminado), se

obtendrá un array con ambos Indices.

✔ print "<pre>mysql_fetch_array(\$resultado):\n".print_r(mysql_fetch_array($resultado),true)."</pre>";

mysql_fetch_array($resultado):
Array
(
[0] => 100
[cod_alu] => 100
[1] => MAIALEN PEREZ
[nombre] => MAIALEN PEREZ
[2] => 567349823
[telefono] => 567349823
[3] => 48356
[cp] => 48356
)

✔ mysql_fetch_array($resultado,MYSQL_NUM) se obtienen solo los Indices numéricos igual que

mysql_fetch_row() .

✔ print "<pre>mysql_fetch_array(\

$resultado,MYSQL_NUM):\n".print_r(mysql_fetch_array($resultado,MYSQL_NUM),true)."</pre>";

mysql_fetch_array($resultado,MYSQL_NUM):
Array
(
[0] => 205
[1] => FRANCISCO RICO
[2] => 567129834
[3] => 48356
)

✔ mysql_fetch_array($resultado,MYSQL_ASSOC) se obtienen solo los Indices asociativos igual

que mysql_fetch_assoc() .

✔ print "<pre>mysql_fetch_array(\

$resultado,MYSQL_ASSOC):\n".print_r(mysql_fetch_array($resultado,MYSQL_ASSOC),true)."</pre>";

mysql_fetch_array($resultado,MYSQL_ASSOC):
Array
(
[cod_alu] => 300
[nombre] => RANERI
[telefono] => 345984567
[cp] => 48324
)

➢ Se extraen algunos datos de un alumno en modo lista:

✔ print "<ol>";

while($dato=mysql_fetch_row($resultado))
{
print "<li>$dato[1] Telef: $dato[2]</li>";
}
print "</ol>";

➢ Ponemos el puntero de nuevo a cero (comienzo) con mysql_data_seek (resource $result ,int

$row_number ) .
✔ mysql_data_seek($resultado,0);

➢ Recorremos de nuevo el resultado sin tener que reenviar la consulta con un for:

✔ print "<ol>";

for($i=0;$i<$num_filas;$i++)
{
$dato=mysql_fetch_row($resultado);
print "<li>$dato[1] Telef: $dato[2]</li>";
}
print "</ol>";

JOSE MEJIAS Telef: 657435687

1.
2. ROSA SUAREZ Telef: 675234536
3. MAIALEN PEREZ Telef: 567349823
4. FRANCISCO RICO Telef: 567129834
5. RANERI Telef: 345984567
6. RAMON RENARO Telef: 456873456

➢ Recorremos de nuevo el resultado sin tener que reenviar la consulta con un while:

✔ mysql_data_seek($resultado,0);
print "<h4>Con while</h4>";
print "<ol>";
while($dato=mysql_fetch_row($resultado))
{
print "<li>$dato[1] Telef: $dato[2]</li>";
}
print "</ol>";

JOSE MEJIAS Telef: 657435687

1.
2. ROSA SUAREZ Telef: 675234536
3. MAIALEN PEREZ Telef: 567349823
4. FRANCISCO RICO Telef: 567129834
5. RANERI Telef: 345984567
6. RAMON RENARO Telef: 456873456

➢ Labores de limpieza:

✔ mysql_free_result($resultado);

mysql_close();

Se crea una base de datos llamada foro y dentro una tabla llamada usuarios

Se introducen algunos usuarios (no se mete código usuario porque lo he configurado como auto_increment).

Se crea un programa php que muestra los usuarios por
ejemplo de un foro (24_listado_usuarios.php).



Si se pincha en el nombre muestra datos de ese
usuario (24_mostrar_ficha.php).

• Da opciones de borrado del usuario

(24_borrar_ficha.php).

• Edición del usuario para modificar sus datos

(24_editar_ficha.php).

• Y también hay una opción para insertar usuarios
en la base de datos (24_insertar_ficha.html y
24_insertar.php).

Contenido del programa 24_listado_usuarios.php (usando un for)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" >
<title>Listado de usuarios </title>
</head>
<body>
<h3> Listado de usuarios </h3>
<?php
//Primero conectamos con la base de datos, Si anteponemos @ no escribe el error por defecto
@ $conexion = mysql_connect('localhost'/* servidor */, 'root'/* usuario */,''/* clave */);
if(!$conexion)

die("Imposible conectar. Error n&uacute;mero ".mysql_errno().": ".mysql_error());

{

}

//Abrimos la BBDDD
mysql_select_db('foro') or die('Imposible abrir la BBDD: '.mysql_error());

//Creamos la query
$consulta='SELECT * FROM usuarios';

//Mandamos la query al servidor de BBDD Si algo ha ido mal, $resultado se interpreta como falso
$resultado=mysql_query($consulta) or die("Imposible consultar: ".mysql_error());

//En este caso, que la consulta es una select, devuelve un objeto de tipo recurso que permite acceder al resultado de la consulta.
$num_filas=mysql_num_rows($resultado);

//usando for
//Creamos una Tabla para mostrar el contenido de la consulta en formato tabla
print "\t\t<table border=\"2\">\n";
//print "\t\t<caption><b>Tabla Listado usuarios</b></caption>\n";
//genero la cabecera
print "\t\t\t<tr>
<th>Nombre usuario</th>

<th>Borrar</th>
<th>Editar</th>

</tr>\n";
//con un for recorro las filas de la tabla
for($i=0;$i<$num_filas;$i++)
{
$dato=mysql_fetch_row($resultado);

print "\t\t\t\t<tr>\n";

//imprimo en la tabla

print "\t\t\t\t<td><a href=\"24_mostrar_ficha.php?id=$dato[0]\">$dato[1]</a></td>\n";

//con $dato[] imprimo el contenido de cada co
  • Links de descarga
http://lwp-l.com/pdf19198

Comentarios de: Implantacion de aplicaciones Web (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad