PERLSCRIPT UNIDAD 5: INTRODUCION A LAS BASES DE DATOS

TEMA 13: EDICION DE REGISTROS

Editar registros significa cambiar el contenido de algunos de los campos o columnas por nueva informacion o para corregir algun error de captura original o para agregar alguna columna que no existia por modificacion de la tabla o la base de datos.

RECORDAR que se puede modificar cualquier columna EXCEPTO LA COLUMNA CLAVE.

El procedimiento exige la construccion de una pagina html normal o estatica(prog21.html) y dos programas asp, el primero de ellos(porg21.asp) es el de busqueda por clave normal, solo que este asp construira una forma html dinamica con los datos del registro original.

Ya el usuario con esta forma html dinamica, editara o modificara los datos y activara el segundo programa asp(prog22.asp), que hara la modificacion al registro.

Este segundo programa asp, es muy parecido al de aritmetica es decir cambiar los valores de las columnas como lo muestra el programa ejemplo:

Prog21.html

<HTML> <P> FORMA HTML PROG 21</P>
<FORM ACTION=HTTP://PROGRAMACIONFACIL.COM:4080/tusitio/PROG21.ASP METHOD=POST>
CLAVE<INPUT TYPE=TEXT NAME=clave><BR>
<INPUT TYPE=SUBMIT VALUE=editar>
</FORM> </HTML>

prog21.asp

<% @LANGUAGE = PerlScript %>
<%
# creando objetos conecciones y recordset de ado
$coneccion = $Server->CreateObject('ADODB.Connection');
$driver='Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\progfacil\lauro\mibase.mdb';
$coneccion->Open($driver);
$Rs=$Server->CreateObject('ADODB.RecordSet');
# en open tambien es valido usar un select de sql
$Rs->Open('mitabla', $coneccion, 1, 1);
# y los numeros son modos de usar open ver ado open
# cargar edad a filtrar
$clave = $Request->Form('clave')->item;
# usando propiedad filter, para buscar
$Rs->{'Filter'} = "clave = $clave ";
if($Rs->EOF) { $Response->Write(" no hay registros "); return; };
#cargando variables para desplegar en texts
$nombre=$Rs->Fields(1)->{value};
$edad=$Rs->Fields(2)->{value};
# construyendo forma de edicion
$Response->Write('<HTML>');
$Response->Write('NO EDITAR CLAVE <BR>');
$Response->Write('<FORM ACTION=HTTP://PROGRAMACIONFACIL.COM:4080/tusitio/PROG22.ASP METHOD=POST>');
$Response->Write("CLAVE<INPUT TYPE=TEXT NAME=clave VALUE=$clave><BR>");
$Response->Write("NOMBRE<INPUT TYPE=TEXT NAME=nombre VALUE=$nombre><BR>");
$Response->Write("EDAD<INPUT TYPE=TEXT NAME=edad VALUE=$edad><BR>");
$Response->Write("<INPUT TYPE=SUBMIT VALUE=EDITAR><BR>");
$Response->Write('</FORM></HTML>');
# cerrar y liberar recordset y coneccion
$Rs->Close;
$coneccion->Close;
undef $Rs;
undef $conneccion;
%>

prog22.asp

<% @LANGUAGE = PerlScript %>
<%
# creando objetos conecciones y recordset de ado
$coneccion = $Server->CreateObject('ADODB.Connection');
$driver='Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\progfacil\lauro\mibase.mdb';
$coneccion->Open($driver);
$Rs=$Server->CreateObject('ADODB.RecordSet');
# abriendo recordset para inserccion
$Rs->Open('mitabla', $coneccion, 2, 2);
$clave=$Request->Form('clave')->item;
# usando propiedad filter, para buscar
$Rs->{'Filter'} = "clave = $clave ";
if($Rs->EOF) { $Response->Write(" no hay registros "); return; };
# cargando el resto de campos desde forma
$nombre=$Request->Form('nombre')->item;
$edad=$Request->Form('edad')->item;
# actualizando el recordset con los nuevos datos
$Rs->Fields(1)->{value}=$nombre;
$Rs->Fields(2)->{value}=$edad;
# actualizando en disco
$Rs->Update();
# cerrar y liberar recordset y coneccion
$Response->Write('ya edite SDQ');
$Rs->Close;
$coneccion->Close;
undef $Rs;
undef $conneccion;
%>

base original prog15.html

image179.jpg

corrida prog21.html

image180.jpg

corrida prog21.asp

image181.jpg

revisando la base de datos con prog15.asp

image182.jpg

No es murcielago es BATMAN

TAREAS PROGRAMACION PERL SCRIPT :

1.- construir asp's para sus tablas y bases de datos

Politica de Privacidad