ASP

466 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
466
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ASP

  1. 2. PARÁMETROS EN UN HIPERVÍNCULO ASP
  2. 3. Parámetros en un hipervínculo asp <ul><li>Habíamos visto que podemos enviar datos al servidor mediante un formulario. En muchas situaciones necesitamos enviar datos al servidor al ser presionado un hipervínculo. </li></ul><ul><li>Vamos a resolver un problema muy sencillo donde llamaremos a otra página enviándole como parámetro un número. La página que lo recibe imprime la tabla de multiplicar de dicho valor. </li></ul>
  3. 4. <ul><li>pagina1.html </li></ul><ul><li><html> <head> <title>Problema</title> </head> <body> <a href=&quot;pagina1.asp?tabla=2&quot;>Tabla del 2</a> <br> <a href=&quot;pagina1.asp?tabla=3&quot;>Tabla del 3</a> <br> <a href=&quot;pagina1.asp?tabla=4&quot;>Tabla del 4</a> </body> </html> </li></ul>
  4. 5. <ul><li>Como podemos observar un parámetro en un hipervínculo se lo añade en la propiedad href y seguido al nombre de la página a llamar mediante el caracter de &quot;?&quot; interrogación. Todo parámetro tiene un nombre y luego del caracter igual el valor del mismo. </li></ul><ul><li><a href=&quot;pagina1.asp?tabla=2&quot;>Tabla del 2</a> <br> </li></ul>
  5. 6. <ul><li>Ahora la página asp que rescata el valor del parámetro es: </li></ul><ul><li><%option explicit%> <html> <head> <title>problema</title> </head> <body> <% dim num,f num=request.querystring(&quot;tabla&quot;) response.write(&quot;<h1>Tabla de multiplicar del &quot; & num &&quot;</h1>&quot;) for f=num to num*10 step num response.write(f & &quot;-&quot;) next %> </body> </html> </li></ul>
  6. 7. <ul><li>Recordemos que para extraer el valor cargado en un control de un formulario HTML utilizamos el objeto request y el método form. En cambio para recuperar el dato enviado en el hipervínculo empleamos el método querystring del mismo objeto request: </li></ul><ul><li>num=request.querystring(&quot;tabla&quot;) Una vez rescatado el valor procedemos a mostrar los primeros diez términos de la tabla de multiplicar respectiva: </li></ul><ul><li>for f=num to num*10 step num response.write(f & &quot;-&quot;) next </li></ul>
  7. 8. <ul><li>Es decir inicializamos el contador f con el valor rescatado del parámetro. En cada paso del for incrementamos el contador f en num. Por último indicamos que el ciclo finalice cuando f llegue al valor num*10. </li></ul><ul><li>Si queremos pasar más de un parámetro en un hipervínculo debemos separarlos empleando el carácter &. </li></ul><ul><li>Por ejemplo: </li></ul><ul><li><a href=&quot;pagina1.asp?inicio=5&fin=10&quot;>Mostrar los números comprendidos entre 5 y 10</a> </li></ul>
  8. 9. ESCRITURA Y LECTURA DE UN ARCHIVO DE TEXTO EN ASP <ul><li>Veremos ahora una actividad fundamental para el empleo de páginas dinámicas que es la registración de datos en el servidor empleando un archivo de texto. </li></ul><ul><li>Debe quedar bien en claro que el archivo de texto se encuentra en el servidor web y no en la máquina donde se encuentra el navegador. </li></ul><ul><li>Desarrollaremos un problema que requiera la creación, carga y lectura de una archivo de texto: Confeccionar un programa que permita cargar comentarios en un sitio web y almacenarlos en un archivo de texto. Implementar dos hipervínculos, uno que permita cargar datos en el archivo de texto y otra página que permita realizar la lectura del archivo de texto. </li></ul>
  9. 10. <ul><li>La primer página tiene por objetivo mostrar los dos hipervínculos: </li></ul><ul><li>pagina1.html </li></ul><ul><li><html> <head> <title>problema</title> </head> <body> <a href=&quot;pagina2.html&quot;>Cargar comentarios</a><br> <a href=&quot;pagina3.asp&quot;>Leer comentarios</a> </body> </html> </li></ul>
  10. 11. <ul><li>Ahora presentaremos los dos archivos necesarios para efectuar la carga y registración de datos en el servidor: </li></ul><ul><li>pagina2.html </li></ul><ul><li><html> <head> <title>problema</title> </head> <body> <form action=&quot;pagina2.asp&quot; method=&quot;post&quot;> Ingrese su nombre: <input type=&quot;text&quot; name=&quot;nombre&quot;><br> Comentarios<br> <textarea name=&quot;comentarios&quot; rows=&quot;10&quot; cols=&quot;40&quot;></textarea><br> <input type=&quot;submit&quot; value=&quot;enviar&quot;><br> </form> </body> </html> </li></ul>
  11. 12. <ul><li>Ahora el archivo que presenta los conceptos nuevos es: </li></ul><ul><li>pagina2.asp </li></ul><ul><li><%option explicit%> <html> <head> <title>problema</title> </head> <body> <% dim nombre,comentarios,archivo,ref nombre=request.form(&quot;nombre&quot;) comentarios=request.form(&quot;comentarios&quot;) set archivo = CreateObject(&quot;Scripting.FileSystemObject&quot;) set ref = archivo.OpenTextFile(server.mappath(&quot;comentarios.txt&quot;), 8, True) ref.writeline(&quot;_____Comentario___________________________________________________&quot;) ref.writeline(now()) ref.writeline(&quot;&quot;) ref.writeline(&quot;Nombre: &quot; & nombre) ref.writeline(&quot;&quot;) ref.writeline(&quot;Comentarios: &quot; & comentarios) ref.close() %> <h2>Los comentarios fueron registrados</h2> <a href=&quot;pagina1.html&quot;>Retornar</p> </body> </html> </li></ul>
  12. 13. <ul><li>Ahora procederemos a la lectura del archivo de texto: </li></ul><ul><li>pagina3.asp </li></ul><ul><li><%option explicit%> <html> <head> <title>problema</title> </head> <body> <% dim linea,archivo,ref set archivo = CreateObject(&quot;Scripting.FileSystemObject&quot;) set ref = archivo.OpenTextFile(server.mappath(&quot;comentarios.txt&quot;), 1, True) do while not ref.atendofstream linea=ref.readline() response.write(linea & &quot;<br>&quot;) Loop ref.close() %> <br> <a href=&quot;pagina1.html&quot;>Retornar</p> </body> </html> </li></ul>
  13. 14. <ul><li>Creamos ahora un objeto de la clase FileSystemObject que nos permite acceder al sistema de archivos del servidor como vimos en la página anterior: </li></ul><ul><li>set archivo = CreateObject(&quot;Scripting.FileSystemObject&quot;) Abrimos un archivo de texto para leer: </li></ul><ul><li>set ref = archivo.OpenTextFile(server.mappath(&quot;comentarios.txt&quot;), 1, True) Ahora indicamos en el segundo parámetro el valor 1 ya que de esta forma se abre el archivo para lectura. Como pasamos True en el tercer parámetro si el archivo no existe se crea en forma automática. </li></ul><ul><li>Para proceder a la lectura de cada línea del archivo de texto: </li></ul><ul><li>do while not ref.atendofstream linea=ref.readline() response.write(linea & &quot;<br>&quot;) Loop El método atendofstream retorna true si llegó al fin de archivo, por eso mediante el operador lógico not invertimos el valor devuelto por esta función. Normalmente atendofstream retorna false ya que no se ha llegado al fin de archivo. </li></ul><ul><li>Este while se repite mientras no se llegue al fin de archivo. En cada vuelta leemos una línea del archivo de texto con el método readline, procediendo a imprimirla en la página. Agregamos un br al final de cada línea. </li></ul><ul><li>Cuando finalizamos la lectura de datos del archivo de texto procedemos a cerrarlo: </li></ul><ul><li>ref.close() </li></ul>
  14. 15. EJEMPLO <ul><li>Simulador (Cuando presiona el botón &quot;ejecutar el programa&quot; se graban todos los cuadros de texto y se ejecuta el primero de la lista mostrando en una página el resultado. ) </li></ul><ul><li>Confeccionar un programa que permita cargar comentarios en un sitio web y almacenarlos en un archivo de texto. Implementar dos hipervínculos, uno que permita cargar datos en el archivo de texto y otra página que permita realizar la lectura del archivo de texto. </li></ul>
  15. 16. <ul><li>pagina1.html </li></ul><ul><li><html> </li></ul><ul><li><head> </li></ul><ul><li><title>problema</title> </li></ul><ul><li></head> </li></ul><ul><li><body> </li></ul><ul><li><a href=&quot;pagina2.html&quot;>Cargar comentarios</a><br> </li></ul><ul><li><a href=&quot;pagina3.asp&quot;>Leer comentarios</a> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul>
  16. 17. <ul><li>pagina2.html </li></ul><ul><li><html> </li></ul><ul><li><head> </li></ul><ul><li><title>problema</title> </li></ul><ul><li></head> </li></ul><ul><li><body> </li></ul><ul><li><form action=&quot;pagina2.asp&quot; method=&quot;post&quot;> </li></ul><ul><li>Ingrese su nombre: </li></ul><ul><li><input type=&quot;text&quot; name=&quot;nombre&quot;><br> </li></ul><ul><li>Comentarios<br> </li></ul><ul><li><textarea name=&quot;comentarios&quot; rows=&quot;10&quot; cols=&quot;40&quot;></textarea><br> </li></ul><ul><li><input type=&quot;submit&quot; value=&quot;enviar&quot;><br> </li></ul><ul><li></form> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul>
  17. 18. <ul><li>pagina2.asp </li></ul><ul><li><%option explicit%> </li></ul><ul><li><html> </li></ul><ul><li><head> </li></ul><ul><li><title>problema</title> </li></ul><ul><li></head> </li></ul><ul><li><body> </li></ul><ul><li><% </li></ul><ul><li>dim nombre,comentarios,archivo,ref </li></ul><ul><li>nombre=request.form(&quot;nombre&quot;) </li></ul><ul><li>comentarios=request.form(&quot;comentarios&quot;) </li></ul><ul><li>set archivo = CreateObject(&quot;Scripting.FileSystemObject&quot;) </li></ul><ul><li>set ref = archivo.OpenTextFile(server.mappath(&quot;comentarios.txt&quot;), 8, True) </li></ul><ul><li>ref.writeline(&quot;_____Comentario___________________________________________________&quot;) </li></ul><ul><li>ref.writeline(now()) </li></ul><ul><li>ref.writeline(&quot;&quot;) </li></ul><ul><li>ref.writeline(&quot;Nombre: &quot; & nombre) </li></ul><ul><li>ref.writeline(&quot;&quot;) </li></ul><ul><li>ref.writeline(&quot;Comentarios: &quot; & comentarios) </li></ul><ul><li>ref.close() </li></ul><ul><li>%> </li></ul><ul><li><h2>Los comentarios fueron registrados</h2> </li></ul><ul><li><a href=&quot;pagina1.html&quot;>Retornar</p> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul>
  18. 19. <ul><li>pagina3.asp </li></ul><ul><li><%option explicit%> </li></ul><ul><li><html> </li></ul><ul><li><head> </li></ul><ul><li><title>problema</title> </li></ul><ul><li></head> </li></ul><ul><li><body> </li></ul><ul><li><% </li></ul><ul><li>dim linea,archivo,ref </li></ul><ul><li>set archivo = CreateObject(&quot;Scripting.FileSystemObject&quot;) </li></ul><ul><li>set ref = archivo.OpenTextFile(server.mappath(&quot;comentarios.txt&quot;), 1, True) </li></ul><ul><li>do while not ref.atendofstream </li></ul><ul><li>linea=ref.readline() </li></ul><ul><li>response.write(linea & &quot;<br>&quot;) </li></ul><ul><li>Loop </li></ul><ul><li>ref.close() </li></ul><ul><li>%> </li></ul><ul><li><br> </li></ul><ul><li><a href=&quot;pagina1.html&quot;>Retornar</p> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul>

×