Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DESARROLLO DE
SOFTWARE
MANUAL DE APRENDIZAJE
DESARROLLO DE
APLICACIONES WEB
CÓDIGO: 89001703
Profesional Técnico
DESARROLLO DE APLICACIONES WEB
TABLA DE CONTENIDO
TAREA PÁG.
I. ¿Qué es PHP? 6
III. Arreglos. 42
IV. Funciones. 55
V. Formularios. 68
I. ¿QUÉ ES PHP?
Instalación de servicios.
Editores de programa.
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Instalación de servicios.
Editores de programa.
Nota: Los pasos que vamos a realizar sería lo mismo si estuviésemos en otra
plataforma como Linux, etc.
Nota: Con ello se activara todas las librerías para la conexión a base de datos.
Las más potentes nos ofrecen todo tipo de ayuda contextual para no tener que
recordar cada detalle de los cientos de atributos de CSS y etiquetas HTML
Kompozer
Es un editor de HTML y CSS que es gratuito y multiplataforma (Windows Mac
y Linux). Ofrece vista previa de la página mientras se escribe código, múltiples
pestañas, edición específica de CSS, etc.
http://www.kompozer.net/
Amaya
Es el editor web que valida el código HTML como a construir su página, y
puesto que usted puede ver la estructura de árbol de los documentos de su
web, que puede ser muy útil para aprender a entender el DOM y como sus
documentos se vean en la estructura del documento. Tiene un montón de
características que la mayoría de los diseñadores web no vuelva a usar, pero
si usted está preocupado acerca de las normas y quieres estar 100% seguro
de que sus páginas trabajar con los estándares del W3C, este es un gran
editor para su uso.
http://www.w3.org/Amaya/
BlueGriffon
Este excelente editor WYSIWYG utiliza por debajo el motor de renderizado de
Firefox para visualizar las páginas a medida que las vamos editando. Cuenta
con ayudas a la escritura de código y ofrece incluso la posibilidad de probar en
tiempo real transformaciones 3D de CSS3 sin abandonar el editor (ventajas de
utilizar el motor Gecko de Mozilla). Es gratuito, Open Source y multiplataforma
(Windows, Mac y Linux) y está disponible en Español entre otros muchos
idiomas.
http://bluegriffon.org/
Sublime Text
Un editor de texto avanzado para programadores, multiplataforma. No ofrece
muchas de las características de ayuda al programador web que sí ofrecen la
mayoría de los otros entornos, por lo que es recomendable sobre todo si
vamos a trabajar mucho directamente con código, especialmente JavaScript.
http://www.sublimetext.com/
DreamWeaver
Es un software de edición en forma de un estudio su propósito es construir,
desarrollar, diseñar y editar sitios, vídeos y aplicaciones web. Adobe
Dreamweaver se ha convertido en el programa más utilizado para el diseño y
la programación web, esto gracias a las funciones que posee, su fácil
integración a otros programas.
http://www.adobe.com/es/products/dreamweaver.html
NetBeans
Es un entorno de desarrollo gratuito y de código abierto permite el uso de un
amplio rango de tecnologías de desarrollo tanto para escritorio, como
aplicaciones Web, o para dispositivos móviles. Da soporte a las siguientes
tecnologías, entre otras: Java, PHP, Groovy, C/C++, HTML5, Además puede
instalarse en varios sistemas operativos: Windows, Linux, Mac OS.
https://netbeans.org/
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
que encuentra una etiqueta de fin de código, que le dice al intérprete que siga
ignorando el código siguiente. Este mecanismo permite ingresar código PHP
dentro de HTML: todo lo que está fuera de las etiquetas PHP se deja tal como
está, mientras que el resto se interpreta como código.
Separación de instrucciones.
PHP requiere que las instrucciones terminen en punto y coma al final de cada
sentencia. La etiqueta de cierre de un bloque de código de PHP
automáticamente implica un punto y coma; no es necesario usar un punto y
coma para cerrar la última línea de un bloque de PHP. La etiqueta de cierre del
bloque incluirá la nueva línea final inmediata si está presente.
print “Hola”;
echo “Hola”, “Hola de nuevo”;
Carácter Significado
\n Salto de línea
\r Retorno de carro
\t Tabulador horizontal
\\ Comentario de una solo línea
\* Comentario de varias lineas
\' Apostrofe
\" Comillas dobles
2.2. VARIABLES.
Las variables en PHP son representadas con un signo de dólar ($) seguido por
el nombre de la variable. El nombre de la variable es sensible a minúsculas y
mayúsculas.
Para declarar un nombre de variable válido, éste tiene que empezar con una
letra (o si no empieza con una letra, tendrá que hacerlo con un carácter de
subrayado), seguido de cualquier número de letras, números y caracteres de
subrayado, sin espacios.
Ejemplo Observación
$4variable Nombre de variable inválido.
$_4variable Nombre de variable válido.
$variable4 Nombre de variable válido.
$otra Nombre de variable válido.
$1_otra Nombre de variable inválido.
$variable_de_nombre_muy_largo Nombre de variable válido.
$ABC Nombre de variable válido.
$ABC Nombre de variable inválido.
$A_y_B_x_C Nombre de variable válido.
Cualquier valor numérico decimal o entero (fuera del intervalo anterior) que se
Double $a=1.23 asigne a una variable la convertirá a este tipo
Cualquier valor entrecomillado (sean números o letras) que se asigne a una
String $a="123" variable la convertirá a este tipo
2. Crear la siguiente página PHP para llamar a las variables globales, luego
grabarlo con el nombre “ejemplo4.php”.
Bien vamos a ver otra forma de enviar variables entre páginas web PHP,
para ello enviaremos las variables a través del URL.
2.3. CONSTANTES.
Las constantes son útiles para definir valores que no van a cambiar. Por
ejemplo, podemos definir una constante llamada PI que contenga el valor de
3,14. Este valor no va a cambiar, por lo tanto es más lógico utilizar una
constante en vez de una variable. La diferencia entre una constante y una
variable es que la constante es global, por lo tanto se puede utilizar en todo el
ámbito del script sin ningún problema.
2. Ahora vamos los valores de las constantes, para ello debemos crear la
siguiente página PHP, al finalizar grábalo con el nombre
“mostrar_constantes.php”
2.4. OPERADORES.
== Igual a Retorna True si el primer operando es igual $resultado = 1 == 1; // el resultado será True
al segundo
!= ó <> Diferente a Retornan True si el primer operando es $resultado = 1 != 1; // el resultado sera False
diferente al segundo
Retorna True si el primer operando es igual
=== Igual a $resultado = 1=== 1; // el resultado será True
al segundo en valor y tipo de dato
Retorna True si el primer operando no es
!== Igual a $resultado = 1 !== '1'; // el resultado será False
igual al segundo en valor y tipo de dato
< Menor que Retorna True si el primer operando es $resultado = 1 < 2; // el resultado será True
menor que el segundo
> Mayor que Retorna True si el primer operando es $resultado = 1 > 2; // el resultado será False
mayor que el segundo
Menor o igual Retorna True si el primer operando es
<= $resultado = 1 <= 1; // el resultado será True
que menor o igual que el segundo
Mayor o igual Retorna True si el primer operando es
>= $resultado = 1 >= 2; // el resultado será False
que mayor o igual que el segundo
Operadores Lógicos
$resultado=True && True;// $resultado tendrá valor True
&& AND Realiza una operación lógica "AND"
$resultado=True && False; //$resultado tendrá valor False
Realiza una operación lógica "OR" $resultado = True || True; // $resultado tendrá valor False
|| OR
( OR exclusivo) $resultado=True && False;//$resultado tendrá valor True
Realiza una negación de la operación a la $resultado = !True ; // $resultado tendrá valor False
! NOT
cual se anteponga $resultado = !False; // $resultado tendrá valor True
Operadores de Incremento/Decremento
Operador de Concatenación
$cadena1 = 'ETI-';
$cadena2 = ' SENATI';
. Concatena Permite concatenar cadenas de texto
//Concatenamos
echo $cadena1 . $cadena2; // Resultado es: ETI-SENATI
Operadores de Asignación
Realiza la asignación de un valor que este a
= Asignación la derecha a una variable que este a la $resultado = 10 ;
izquierda del operador
Sintaxis IF:
if( condición) if(condición)
{ {
instrucciones; instrucciones;
} }
else
{
instrucciones;
}
Resultado:
Resultado:
Sintaxis
Switch( variable)
{ case valor1:
instrucciones; break;
case valor2:
instrucciones; break;
case valor3:
instrucciones; break;
default : instrucciones;]
}
Resultado:
Resultado:
III. ARREGLOS.
Arreglos – tipos.
Operaciones con arreglos.
Arreglos multidimensionales.
Cálculo de Comisiones.
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Arreglos – tipos.
Operaciones con arreglos.
Arreglos multidimensionales.
Cálculo de Comisiones.
1. Unidimensionales: solo tiene una solo dimensión una fila y una columna.
2. Bidimensionales: tablas o matrices.
Declaración:
Ejemplo unidimensional:
$numero=array();
$numero[0]=34;
$numero[1]=67;
$numero[2]=18;
$numero[3]=90;
0 0 1 2 3
1
2
3
4
Resultado:
Supongamos que no queremos mostrar uno a uno los valores que hay
almacenados en un arreglo, sino que buscamos mostrar el contenido completo
para ver qué datos contiene, pues entonces usamos las sentencias repetitivas.
A partir de aquí entraremos en la parte más divertida de la programación, como
son el uso de arreglos y bucles repetitivos.
Resultado:
Resultado:
solo ese podíamos guardar , es por ello que los cálculos se deben realizar en el
mismo bucle.
Resultado:
Cuando el elemento 0 del arreglo se compara con 20, hay una nueva
asignación para mayor que es 20, luego el mayor se compara con 12 pero esta
es menor y no se realiza una nueva asignación, ahora el mayor se compara
con 98 y si se realiza un nueva asignación para mayor que es 98, después se
compra el mayor con 45 y no se realiza una nueva asignación y al final
compara el mayor con 79 y no se realiza una nueva asignación.
Resultado:
En este script usamos dos variables enteras $fila que se usa para
las líneas y $columnas que se usa para las columnas, usamos
bucles anidados porque necesitas recorrer por cada línea, todas
las columnas, esto sucede así:
Cuando la $fila tiene el valor de 0 la $columna toma el valor de 0 esto hace que
se puede leer el elemento $numero[0][0], $numero[0][1], $numero[0][2],
$numero[0][3] luego cuando la $fila tiene el valor de 1 entonces la $columna
vuelve a iniciar de 0 a 3 haciendo lo mismo 4 veces que es el número de las
líneas.
Resultado:
Resultado:
[0][2][1]
[0][2][0]
Arreglo2
Resultado:
Resultado:
IV. FUNCIONES
Funciones PHP.
Funciones de usuario.
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Funciones PHP.
Funciones de usuario.
Aquí veremos cómo trabajar con cadenas, números y fechas en PHP. Son
funciones incorporadas de PHP pero, como notas personales aquí reflejo las
funciones.
Resultado:
Resultado:
Resultado:
Resultado:
Una función es un subprograma que realiza una tarea específica y que puede
ser definido mediante 0, 1 o más parámetros. Tanto en entrada de información
a la función y como la devolución de resultados desde la subrutina se realiza
mediante parámetros, el cual nos sirve para introducir o modificar información
del script PHP principal.
Sintaxis:
Ejemplo:
<?php
//Crear
function sumar($n1,$n2)
{
return $n1 + $n2;
}
?>
Resultado:
Resultado:
Nota: Las funciones no se pueden llamar igual que las variables que se
declaran en el script.
Nota:
• Se deberá de usar una función con retorno para los cálculos y para mostrar
de los datos.
• Usar un subproceso con retorno para el cálculo del ESSALUD.
• Usar un subproceso con retorno para el cálculo de la comisión.
Función de ingresar.
En esta función sin retorno se ingresan los datos, validando que la zona solo
sea A, B, C.
Función de cálculo.
Se calcula la comisión e ESSALUD usando las funciones con retorno
declarados anteriormente, luego el total a pagar, algo que debemos de notar es
que las ventas y la zona se pasan como parámetros de valor y las demás
ESSALUD, comisión y total pagar como parámetros de variable porque
necesitamos modificar su valor.
Función mostrar.
Mostramos los cálculos y pasamos las variables como parámetros de valor,
porque solo los necesitamos para mostrar.
Resultado:
V. FORMULARIOS.
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Por ejemplo, si realiza una compra, tendremos que recuperar los datos para
completar el proceso de pago. La información del formulario se almacena en
variables (Que es el nombre de los controles) que podremos recuperar y utilizar
[grabar.php]
Resultado:
Usando $_GET.
[conget.php]
Resultado:
Resultado:
2. Luego tenemos que crear otra página web que recibirá todos los datos
enviados desde nuestro formulario.(crearticket.php)
Resultado:
Resultado:
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Comando Descripción
mysql –u usuario –p clave Arranque como usuario.
show tables; Mostrar las tablas que contiene una base de datos.
create [temporary] table [if no exists] nombre_tabla (nombre_campo tipo1 opciones2 cláusulas3,
“ “ “,
“ “ “,
[último campo] );
[temporary] --> la tabla existirá mientras exista la conexión con el cliente actual o hasta que se
emita la instrucción drop table.
[if no exist] --> Si existe la tabla no se crea una nueva.
Generales:
null --> admite valores nulos
no null --> rechaza dejar el campo en blanco
default --> permite establecer un valor por defecto
Columnas numéricas:
auto_increment --> para generar identificadores únicos o valores en serie.
unisgned --> rechazo de valores negativos
Cadena:
binary --> trata los valores como cadenas binarias (campos char y varchar)
Cláusulas3:
primary key --> columna indexada para búsqueda rápida. Clave principal, solo puede haber una
unique --> crea un índice con valores únicos
index, key --> son sinónimos y crean índices que pueden contener valores repetidos.
INSERT INTO table_name Se utiliza para insertar nuevos registros a una tabla -
VALUES (value1,value2,value3,...); Forma1
Select : Permite recuperar filas seleccionadas de una o más tablas también pueden utilizarse para recuperar
filas calculadas, sin referencia a alguna tabla.
Y además nos permite consultar los datos almacenados en una o más tablas de la base de datos
SELECT: Esta palabra clave nos indica que la consulta que vamos a realizar es de selección.
ALL: Este nos indica que seleccionaremos todos los valores, generalmente no se especifica, ya que viene por
defecto.
DISTINCT: Nos indica que queremos seleccionar solo valores distintos.
FROM: Indicamos la o las tablas desde donde queremos recuperar los datos, cuando existe más de una tabla
a la consulta se le denomina "consulta combinada" o "join", en este tipo de consultas es necesario aplicar una
condición de combinación, a través de la consulta WHERE.
WHERE: Nos especifica una condición que debe cumplirse para que los datos sean devueltos por la consulta; a
su vez, este admite operadores lógicos como AND y OR.
GROUP BY: Este nos especifica la agrupación que le vamos a dar a los datos, se usa siempre en combinación
de funciones agregadas.
HAVING: Nos da una condición que se debe cumplir para los datos, y especifica una condición que debe
cumplirse para que los datos sean devueltos por la consulta, su funcionamiento es similar al del WHERE, pero
aplicado a un conjunto de resultados devueltos por la consulta. Este deba aplicarse siempre junto a GROUP
BY, y los contenidos deben ser referidos a los contenidos en ella.
ORDER BY: Presenta el resultado ordenado de las columnas indicadas, el orden se puede presentar de forma
ascendente (ASC), el cual generalmente se presenta por defecto o de manera predeterminada; y en forma
descendente (DESC).
ALTER: Modificación de la estructura de las tablas, como renombrar la tabla o variar la estructura de la tabla
de datos.
Más adelante las sentencias SQL van hacer más complicadas por ello te
muestro otra manera de ejecutar las sentencias.
• Abrir el bloc de notas y escribe la sentencia sql luego copia y pega dentro del
servidor mysql.
on delete cascade
on update cascade;
2. Insertar registros.
begin Instrucciones
end;
delimiter //
create procedure insertarproductos
(
codpro char(10),
nombrePro varchar(30),
descripPro varchar(100),
puPro decimal(8,2),
stockPro double,
fotoPro varchar(30))
Begin
End;
//
delimiter //
create procedure insertarfactura
(
nrofacF char(10),
codcliF char(10),
subtotalF decimal(8,2),
igvF decimal(8,2),
totalF decimal(8,2),
estadoF int,
fechaemiF date,
fechacanF date,
codper char(10))
Begin
End;
//
delimiter //
create procedure insertarDF
(
nrofac char(10),
codpro char(6),
cant int,
importe decimal(8,2))
Begin
insert into DetalleFacturas values
(nrofac, codpro,cant,importe);
End;
//
delimiter //
create procedure generarcodigo
(
nomtabla varchar(50)) -- Define un parámetro
-- Inicio
begin
-- Declarar variables
declare ultcod varchar(20);
declare total int;
declare ceros int;
declare opcion int;
declare cod varchar(20);
declare nuevo char(10);
-- Asigna un valor, el último código de la tabla
set ultcod=(select ultimocodigo from auxiliar where tabla=nomtabla);
delimiter //
create function darcodigo
(
nomtabla varchar(20)) -- Define un parámetro
returns varchar(20)
begin -- Inicio
-- Declara una variable
declare cod char(10);
-- Extrae el ultimo código de la tabla especificada
-- y lo asigna a la variable cod
select ultimocodigo into cod from auxiliar where tabla=nomtabla;
-- Retorna la variable cod
return cod;
-- Fin
end;
//
cuál es su último código con ello validamos que los códigos de las tablas
no se repitan.
Deberían empezar en cero, pero no nos olvidemos que ya habíamos
insertado registros en dichas tablas.
Mostrar todas las facturas con sus respectivos clientes y el personal con
su respectivo usuario.
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
Resultado:
[formularioClientes.php]
5. Ahora crear la página PHP, para recuperar los datos y enviar los datos a la
tabla clientes.
Resultado:
3.- Se define la
1.- Definición
estructura del
del Problema
sitio
Proyecto
Web
6.- Se concluye el 4.- Se diseña un
diseño final prototipo
general del sitio
5.- Se pone a
prueba el
prototipo
1 <HTML>
2 <HEAD>
3 <TITLE> ++ Factura ++ </TITLE>
4 </HEAD>
5 <BODY bgproperties="fixed">
6
7 <?php
8 //Activar variable globales
9 session_start();
10 // Incluir el archivo de conexión
11 include("conexion.php");
12 //Almacenar la conexión en una variable
13 $c=conectarMysql("localhost","BDFacturacion","root","mysql");
14
15 ?>
16
17 <br>
18
19 <table border="1" align="center" width="100%" bordercolor="lightblue">
20 <caption align="left">
21 <font size="5"><b>Factura</b></font>
22 </caption>
23 <tr>
24 <Form name="frmNF3" method="post" Action="grabarFactura.php">
25
26 <td width="35%" colspan="4">Codigo :
27 <input name="tbCodigo" type="text" size="10"
28 value="<?php print $codigo; ?>" readonly >
29
30 <tr>
31 <td colspan="4">Nombre : <input name="tbNombre" type="text" size="40"
32 value="<?php print $nombre." ".$apellido; ?>" readonly >
33
34 <tr>
1 <HTML>
2 <HEAD>
3 <TITLE> ++ Factura ++ </TITLE>
4 </HEAD>
5 <BODY bgproperties="fixed">
6
7 <?php
8 //Activar variable globales
9 session_start();
10 // Incluir el archivo de conexión
11 include("conexion.php");
12 //Almacenar la conexión en una variable
13 $c=conectarMysql("localhost","BDFacturacion","root","mysql");
14
15 ?>
16
17 <br>
18
19 <table border="1" align="center" width="100%" bordercolor="lightblue">
20 <caption align="left">
21 <font size="5"><b>Factura</b></font>
22 </caption>
23 <tr>
24 <Form name="frmNF3" method="post" Action="grabarFactura.php">
25
26 <td width="35%" colspan="4">Codigo :
27 <input name="tbCodigo" type="text" size="10"
28 value="<?php print $codigo; ?>" readonly >
29
30 <tr>
31 <td colspan="4">Nombre : <input name="tbNombre" type="text" size="40"
32 value="<?php print $nombre." ".$apellido; ?>" readonly >
33
34 <tr>
35 <td colspan="4"><hr color="#FFCC00" size="5">
36 <tr>
37 <tr>
38 <td colspan="4" >
39 <table border="1" width="100%" bordercolor="#FFCC00"
40 cellspacing="0" align="center" >
41
42 <tr bgcolor="#009900" align="center">
43 <td><font color="#FFFFFF"><b>Codigo</b></font>
44 <td><font color="#FFFFFF"><b>Nombre</b></font>
45 <td><font color="#FFFFFF"><b>Descripcion</b></font>
46 <td><font color="#FFFFFF"><b>Cantidad</b></font>
47 <td><font color="#FFFFFF"><b>Importe</b></font><td>
48 <font color="#FFFFFF">
49
50 <b>Sub Total</b></font>
51 <?php
52 // Realizar una consulta de los
53 // registros de la tabla
54 $datos=mysql_query("select * from temporalDF");
55 // Mostrar el total de registros
56 $Cant=mysql_num_rows($datos);
57 //Evualuar si existe registros
58 if($Cant>=1)
59 { // Crear un bucle para mostrar los datos
60 for($i=0;$i<$Cant;$i++)
61 {
62 //Mostrar los datos en una tabla
63 print "<tr><td align='center'><input name='CodigoPro'
64 type='submit' style='cursor:hand'
65 value='".mysql_result($datos,$i,0)."'>";
66 // Obtener los valores de los campos
67 print "<td>".mysql_result($datos,$i,1)."";
68 print "<td>".mysql_result($datos,$i,2)."";
69 print "<td align='center'>".mysql_result($datos,$i,3)."";
70 print "<td align='center'>".mysql_result($datos,$i,4)."";
71 print "<td align='center'>"
72 .(mysql_result($datos,$i,3))*(mysql_result($datos,$i,4))."";
73
74 }
75 }
76 ?>
77 </table>
78 <tr>
79 <td colspan="4" align="right" bgcolor="#FFCC00">
80
81 <?php
82 // Declarar una constante
83 $SubTotal=0;
84 // Crear un bucle para acumular los importes
85 for($i=0;$i<$Cant;$i++)
86 {
87 $SubTotal += (mysql_result($datos,$i,3))*
88 (mysql_result($datos,$i,4));
89 }
90 // Declarar una constante
91 $igv=0.18;
92 // Calcular
93 $calculo = $SubTotal * $igv;
94
95 $total = $calculo + $SubTotal;
96
97 print "Sub Total => S/ <font color='green'>
98
99 <b> ".$SubTotal."</b></font> IGV =>
100 <font color='green'><b>".$calculo."</b>
1 <?php
2 // Incluir el archivo de conexión
3 include("conexion.php");
4 //Almacenar la conexión en una variable
5 $c=conectarMysql("localhost","BDFacturacion","root","mysql");
6 // Evaluar si el boton del formulario
7 // esta activo
8 if(!isset($btnAgregar))
9 {
10 ?>
11
12 <body link="blue" alink="blue" vlink="blue" bgproperties="fixed">
13 <h1>Productos</h1>
14
15 <?php
16 // Realizar una consulta de los
17 // registros de la tabla
18 $datos=mysql_query("Select * from Productos");
19 // Mostrar el total de registros
20 $Cantidad=mysql_num_rows($datos);
21 //Evualuar si existe registros
22 if($Cantidad >= 1)
23 { // Crear un bucle para mostrar los datos
24 for($i=0;$i<$Cantidad;$i++)
25 {
26 print "<form name='frm' method='post'
27 action='agregarProductos.php'>";
28
29 print "<p> <p><table border='1'
30 align='center' bordercolor='lightblue'>";
31 // Obtener los valores de los campos
32 print "<td> Codigo";
33 print "<td ><input type='text' name='codigo'
34 readonly value='".mysql_result($datos,$i,0)."'>";
35
36 print "<tr>";
37 print "<td> Nombre";
38
39 print "<td><input type='text' name='nombre' readonly
40 value='".mysql_result($datos,$i,1)."'>";
41
42 print "<tr>";
43 print "<td> Descripcion";
44 print "<td><input type='text' name='descrip' readonly
45 value='".mysql_result($datos,$i,2)."'>";
46 print "<tr>";
47 print "<td> Precio";
48 print "<td><input type='text' name='precio' readonly
49 value='".mysql_result($datos,$i,3)."'>";
50 print "<tr>";
51 print "<td>Seleccione la cantidad:";
52 print "<td>";
53 $CantPro=mysql_result($datos,$i,4);
54 print "<select name='CantidadPro' width='30'>";
55 // Crear un bucle para mostrar
56 // la cantida de Stock en el combobox
57 for($c=1;$c<=$CantPro;$c++)
58 {
1 <HTML>
2 <HEAD>
3 <TITLE> ++ Grabar Factura ++ </TITLE>
4 </HEAD>
5 <BODY>
6 <?php
7 //Activar variable globales
8 session_start();
9 // Incluir el archivo de conexión
10 include("conexion.php");
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
1 <html> <head>
2 <title>+++ Acceso a la Intranet +++</title>
3 </head>
4 <body bgcolor=#FFFF99>
5 <FONT FACE='verdana'>
6 <form action="verificardatos.php" method="POST" >
<table align="center" width="350"
7 cellspacing="2"
8 cellpadding="2" border="1">
9 <tr>
10 <td align="right"><b>Ingrese Usuario :</td><td>
11 <input type="Text" name="txtusuario" size="18"
12 maxlength="50"></td>
13 </tr>
14 <tr>
15 <tr>
<td align="right"><b>Ingrese Clave
16 :</td>
1 <?php
2 // Establecer conexión.
3 $con = mysql_connect("localhost","root","mysql");
4 //Seleccionar la base de datos.
5 mysql_select_db("bdcine",$con);
6 //Sentencia sql para buscar un usuario
7 $usuario=$_POST["txtusuario"];
8 $clave=$_POST["txtclave"];
9 // Cadena sql
10 $cadsql = "SELECT * FROM acceso WHERE usuario='$usuario'
11 and clave=des_encrypt('$clave')";
12 //Ejecutar la sentencia sql
13 $datos = mysql_query($cadsql,$con);
14 //Verificamos si el usuario y clave son validos
15 //si la ejecución de la sentencia SQL nos da algún resultado
16 //si existe esa combinación usuario/clave
17 if (mysql_num_rows($datos)!=0)
18 {
19 //usuario y clave válidos
20 //definir una sesion y guardar datos
21 session_start();
22 session_register("autorizar");
23 $autorizar = "SI";
24 header ("Location: ingresointranet.php");
25 }
26 else
27 {
28 //si no existe reenviar otra vez hacia el acceso.
29 header("Location: error.php?errorusuario=si");
30 }
31 // Actualiza los registros
32 mysql_free_result($datos);
33 // Cerrar conexión
34 mysql_close($con);
35 ?>
1 <?php
2 // Incluir el siguiente archivo
3 // en la página web
4 include ("iniciarsesion.php");
5 ?>
6 <html>
7 <head>
8 <title>++ Ingreso ++</title>
9 </head>
10 <body bgcolor=#FFFF99>
11 <FONT FACE='verdana'>
12 <h1> ++++ Bienvenidos a la intranet ++++ </h1>
13 <br><br><br><br><br>
14 <a href="cerrarsesion.php">Salir</a>
15 </font>
16 </body>
17 </html>
1 <?php
2 //iniciar la sesión
3 session_start();
4 //Comprobar que el usuario este autentificado.
5 if ($_SESSION["autorizar"] != "SI")
6 {
7 //si no existe, enviar a la página de autentificacion .
8 header("Location: formularioacceso.php");
9 //salir del script
10 exit();
11 }
12 ?>
6. Crear una página PHP para mostrar un mensaje de error, si los datos de
ingreso no sean correctos: [error.php]
1 <html>
2 <head>
3 <title>+++ Error de Ingreso +++</title>
4 </head>
5 <body bgcolor=#FFFF99>
6 <FONT FACE='verdana'>
7 <?php
8 print "Datos Incorrectos...!!!! <br>";
9 print " <b>+++ Acceso Denegado ++++ </b><br>";
10 print "<a href='formularioacceso.php'>Formulario de Acceso </a>";
11 ?>
12 </font>
13 </body>
14 </html>
1 <?php
2 session_start();
3 //Eliminar sesion.
4 session_destroy();
5 ?>
6 <html>
7 <head>
8 <title>+++ Cerrar Sesión +++</title>
9 </head>
10 <body bgcolor=#FFFF99>
11 <FONT FACE='verdana'>
12 ++ Sesión Cerrada para mayor seguridad ++++
13 <br><br>
14 <a href="formularioacceso.php">
15 Formulario de autentificación</a>
16 </font>
17 </body>
18 </html>
EQUIPOS Y MATERIALES:
ORDEN DE EJECUCIÓN:
1 <?php
2 //---- Mysql
3 function conectarmysql($servidor,$bd,$usu,$clave)
4 {
5 if (!($con=mysql_connect($servidor,$usu,$clave)))
6 {
49 if(!($con=pg_connect($cad)))
50 {
51 print 'Error al Seleccionar el Servidor';
52 }
53 return $con;
54 }
55 ?>
1 <html>
2 <head>
3 <title>+++ Enlaces +++</title>
4 </head>
5 <body bgcolor="black">
6 <table width="78%" border="0" align="center"
7 cellpadding="2" cellspacing="2">
8 <tr bgcolor="black">
9 <td height="25" colspan="3" align="Left">
10 <a href="accesoAccess.php"><font size="2"
11 color="white" face="verdana">
12 Activar cuenta de Acceso (Access)
13 </font></a></td></tr>
14 <tr bgcolor="black">
15 <td height="25" colspan="3" align="Left">
16 <a href="accesoSqlserver.php"><font size="2"
17 color="white" face="verdana">
18 Activar cuenta de Acceso (SqlServer)
19 </font></a></td></tr>
20 <tr bgcolor="black">
21 <td height="25" colspan="3" align="Left">
22 <a href="accesoMysql.php"><font size="2"
23 color="white" face="verdana">
24 Activar cuenta de Acceso (Mysql)
25 </font></a></td></tr>
26 </table>
27 </body>
28 </html>
1 <HTML>
2 <HEAD>
3 <TITLE> +++ Formulario +++ </TITLE>
4 </HEAD>
5 <body bgcolor="black">
6 <form action="verificaralumno.php" method="POST">
7 <table align="center">
8 <tr>
9 <td colspan="2" align="center">
10 <font size="2" color="white" face="Verdana">
11 Ingrese el Codigo del Alumno
12 </font>
13 </td>
14 </tr>
15 <tr>
16 <td align="center">
17 <input type="text" value="" name="nrocod">
18 </td>
19 </tr>
20 <tr>
21 <td colspan="2" align="center">
22 <input type="submit" value="aceptar"
23 onClick="javascript:window.close();">
24 </td>
25 </tr>
26 </table>
27 </form>
28 </BODY>
29 </HTML>
1 <?php
// Incluir el modulo de
2
conexión
3 include('modulo_conexion.php');
4 // Realizar la conexión
5 // y asignarlo en una variable
6 $con=conectaraccess("odbc_Registro","","");
7 // Recuperar los valores del formulario
8 $cod=$_POST["nrocod"];
9 // Realizar la consulta
$datos=odbc_exec($con ,"select * from alumnos where
10
codalu='$cod'");
11 // Inicializar la variable
12 $total=0;
// Evaluar los
13
datos
14 if( $datos > 0 )
{ //Crear un
15
bucle
16 // Para contar el total de registros
17 while ( odbc_fetch_row($datos) )
18 { //Contador
19 $total++;
20 // Recuperar los valores la tabla
21 $cod=odbc_result($datos,1);
22 $nom=odbc_result($datos,2);
23 $ape=odbc_result($datos,3);
24 }
25 }
26 // Evaluar la variable
27 if (odbc_num_rows($datos)!=0 && $total>0)
28 {
29 // Redireccionar
30 header("Location:registro.php?cod=$cod&nom=$nom&ape=$ape");
31 // Mostrar datos
32 print $cod."<br>";
33 print $nom."<br>";
34 }
35 else
{ // Mostrar
36
Datos
37 print "<h1><b>Código de alumno incorrecto o Ud ya fue Registrado";
38 }
39 ?>
1 <HTML>
2 <HEAD>
3 <TITLE> +++ Registro +++ </TITLE>
4 </HEAD>
5 <BODY bgcolor="black">
6 <form name="form1" action="grabar.php" method='post'>
7 <table align="center" BORDER="0" width="60%">
8 <td align="center" colspan="2">
9 <strong>
10 <font color="white" size="4" face="Arial">
11 Registro de Usuario
12 </font></td>
13 </tr>
14 <tr>
15 <td colspan="2" align="center"><hr color="orange">
16 <font color="white" size="4" face="Arial">
17 Alumno(a).
18 <?php
19 print "$nom" ." "."$ape";
20 ?>
21
22 </font>
23 </td>
24 </tr>
25 <tr>
26 <td colspan="2" align="center">
27 <font color="white" size="4" face="Arial">
28 Codigo :</font>
29 <input type="text" value="<?php print $cod; ?>"
30 name="txtcod">
31 <hr color="orange">
32 </td>
33 </tr>
34 <tr>
35 <td colspan="2"><br>
36 <font color="white" size="4" face="Arial">
37 Completar los datos solicitados para
38 terminar su registro.
39 </font><br>
40 </td>
41 </tr>
42 <tr>
43 <td>
44 <font color="white" size="4" face="Arial">
45 Usuario:</font>
46 </td>
47 <td>
48 <input type="text" name="txtusuario">
49 </td>
50 </tr>
51 <tr>
52 <td>
53 <font color="white" size="4" face="Arial">
54 Clave:</font>
55 </td>
56 <td>
57 <input type="password" name="txtclave">
58 </td>
59 </tr>
60 <tr>
61 <td align='center' colspan="2">
62 <input type='submit' value='Grabar'>
63 </td>
64 </tr>
65 </table>
66 </form>
67 </BODY>
68 </HTML>
1 <HTML>
2 <HEAD>
3 <TITLE> +++ Grabar +++ </TITLE>
4 </HEAD>
5 <BODY>
6 <?php
7 // Incluir el modulo de conexión
8 include('modulo_conexion.php');
9 // Recuperar los valores del formulario
10 $usu=$_POST['txtusuario'];
11 $cod=$_POST['txtcod'];
12 // Realizar la conexión
13 // y asignarlo en una variable
14 $con=conectaraccess("odbc_Registro","","");
15 // Realizar la consulta
16 $datos=odbc_exec($con ,"select * from usuarios where codalu='$cod'");
17 // Inicializar la variable
18 $total=0;
19 // Evaluar los datos
20 if( $datos > 0 )
21 { //Crear un bucle
22 // Para contar el total de registros
23 while ( odbc_fetch_row($datos) )
24 { //Contador
25 $total++;
26 }
27 }
28 // Evaluar la variable
29 if($total>0)
30 { // Mostrar un mensaje
31 print "<b><h1>Usuario ya fue Registrado...!!!!<br>";
32 }
33 else
34 {
35 // Recuperar los valores del formulario
36 $usu=$_POST['txtusuario'];
37 $clave=$_POST['txtclave'];
38 // Crear una cadena para la inserción
39 $cad="insert into usuarios values('$cod','$usu','$clave')";
40 // Ejecurar el query
41 $datos=odbc_exec($con ,$cad);
42 // Mostrar una mensaje
43 print "<h><h1>Usuario Registrado Ok...!!!!<br>";
44 }
45 ?>
46 </BODY>
47 </HTML>
X. PASARELA DE PAGO.
EQUIPOS Y MATERIALES:
Computadora con microprocesadores core 2 Duo ó de mayor capacidad.
Sistema operativo Windows.
Acceso a internet.
Software de maquetación y desarrollo de páginas web.
ORDEN DE EJECUCIÓN:
Los medios de pagos online para muchos de nosotros que alguna vez quisimos
comprar online por internet nos es demasiado desconfiado y arriesgado, y por
ello se surgiere plataformas con las que vincular el pago a una tarjeta de débito
o crédito o a una cuenta bancaria, de modo que solo se tenga que introducir la
clave de la cuenta de usuario de la misma plataforma. Algunas opciones son
Paypall, Google Wallet o Paymill.
del proceso de compra y tan solo introduciendo las claves que el banco envía
al cliente a través de un mensaje de texto o con una tarjeta de coordenadas
para confirmar la transferencia. Se trata de un mecanismo que no almacena
información del usuario y solo se produce si el comprador confirma a través de
las claves que le proporciona la entidad.
Confirmar
Compra
Comprar
[boleto.php]
1 <html>
2 <head>
3 <title>++ Ticket ++</title>
4 <meta http-equiv="Content-Type"
5 content="text/html; charset=utf-8" />
6
<style
7 type="text/css">
8 body{
font-
9 family:verdana;
10
11 }
12 </style>
13
14 </head>
15
16 <body oncontextMenu="return false">
17
18 <form name="frmticket" method="get"
19 action="boleto.php" >
20
21 <table width="0%" border="0" align="center"
22 cellpadding="0" cellspacing="0">
23 <tr>
24
49 <td>
50 <input type="time" name="txtinicio"
51 value="<?php print $_GET['txtinicio']; ?>" >
52
53 <font size="1"> Inicio</font>
54 <br>
55
56 <input type="time" name="txtfin"
57 value="<?php print $_GET['txtfin']; ?>" >
58
59 <font size="1"> Fin</font>
60 </td>
61 </tr>
62 <tr>
63 <td>Precio:</td>
64 <td><input type="text" name="txtprecio"
65 placeholder="Ingrese"
66
71 <td>
72 <input type="number" name="txtcantidad"
73 size="5" placeholder="Ingrese"
74
75 value="<?php print $_GET['txtcantidad']; ?>" >
76 </td>
77 </tr>
78 <tr>
79 <td>Importe:</td>
80 <td>
81 <input type="text" name="txtimporte" size="5"
82 value="<?php
83 print $_GET['txtcantidad'] * $_GET['txtprecio'];
84 ?>" >
85 </td>
86 </tr>
87 <tr>
88 <td colspan="3"><br>
89 </td>
90 </tr>
91 <tr>
92 <td colspan="2" align="center">
93 <input type="submit" value="Calcular Importe">
94 <input type="submit" value="Pagar">
95 </td>
96 </tr>
97 <tr>
98 <td colspan="3"><br></td>
99 </tr>
100
101 </table>
102
103 </form>
104
105 <?php
106
107 if($_GET['txtimporte']>0)
108 {
109 ?>
110 <center>
111 <form action="https://www.sandbox.paypal.com/cgi-bin/webscr"
112 method="post">
113
114 <input type="hidden" name="cmd" value="_xclick">
115 Correo de la empresa: <input type="hidden" name="business"
116 value="etisenati201502@gmail.com">
117
118 <input type="hidden" name="item_name"
119 value="Premium Subscription">
120
121 <input type="hidden" name="currency_code" value="USD">
122
123 <input type="hidden" name="amount"
124
125 value="<?php print $_GET['txtimporte']; ?>">
126
127 Click aquí para realizar el pago-->
128 <input type="image"
129 src="http://www.paypal.com/es_XC/i/btn/x-click-but01.gif"
130 name="submit"
131 alt="Pago por Paypal">
132
133 </form>
134
135 <?php
136 }
137
138 ?>
139
140
141 </body>
142 </html>