ASP
Plesk – Publicar aplicación ASP.NET MVC
254Para publicar una aplicación en parallels plesk, teniendo en cuenta que el servidor a publicar tiene instalada la version del framework que utiliza nuestra aplicación, haremos lo siguiente.
¿Cómo se realiza una conexión a SQL Server con ASP.NET?
3110El siguiente ejemplo realiza una conexión contra SQL Server mediante autenticación integrada y obtiene datos
Sub Page_Load(sender as object, e as System.EventArgs)
'Se define el objeto conexión dim conn as System.Data.SqlClient.SqlConnection dim reader as System.Data.SqlClient.SqlDataReader dim sql as System.Data.SqlClient.SqlCommand
'Se especifica el string de conexión conn = New System.Data.SqlClient.SqlConnection() conn.ConnectionString = "data source=.;integrated security=SSPI;initial catalog=TestConnDb"
'Se abre la conexión y se ejecuta la consulta conn.Open() sql = new System.Data.SqlClient.SqlCommand sql.CommandText = "SELECT * FROM tabla" sql.Connection = conn reader = sql.ExecuteReader()
Do while reader.Read() Response.Write( reader.GetValue(0) + "<br/>" ) Loop
End Sub
¿Cómo configuro la cultura en ASP – GetLocale / SetLocale
0El resultado de esta función es un número decimal, y buscandolo en la siguiente tabla puede verse el tipo de cultura
http://www.w3schools.com/vbscript/func_getlocale.asp
Tambien es posible cambiar este valor utilizando otra función en ASP llamada SetLocale.
Un ejemplo para cambiar la cultura sería:
SetLocale("es-ar")
¿Cómo creo un formulario en ASP?
296Ejemplo para crear un formulario de envío de correos en ASP:
<%@LANGUAGE="VBSCRIPT" %>
<!– Ejemplo de Formulario de envio de correos utilizando ASP –>
<!– Este codigo debe ser colocado en un archivo de extension .asp –>
<!–METADATA TYPE="TypeLib" FILE="E:\WINDOWS\system32\cdosys.dll" –>
<!– Formulario para completar con los datos –>
<form action="test_mail.asp" method="POST">
E-mail destinatario: <input type="text" name="destinatario" width="50"></input><br/>
Titulo Consulta: <input type="text" name="TituloConsulta" width="50" ></input><br/>
Texto Consulta: <TEXTAREA NAME="Consulta" ROWS="10" COLS="50"> </TEXTAREA> <br/>
<input type="submit" value="Enviar e-mail" /><input type="hidden" name="enviar" value="1"/>
</form>
<!– Fin Formulario para completar con los datos –>
<%
‘ Se verifica que los datos han sido enviados desde el formulario, para la validación con el SMTP
DestinatarioCorreo = Request("destinatario")
CuentaDesdeDondeSeEenvia = "CuentaDeCorreo" ‘debe ser una creada desde el panel de control nombre@dominio
TextoConsulta= Request("Consulta")
TituloConsulta= Request("TituloConsulta")
If Request("enviar") = 1 Then
If Not Request("usuario") = "" And Not Request("destinatario") = "" Then
‘ Se crean los objetos necesarios para el envío del correo
Set oMail = Server.CreateObject("CDO.Message")
Set iConf = Server.CreateObject("CDO.Configuration")
Set Flds = iConf.Fields
‘ Se configuran los parametros necesarios para el envío
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 1
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "http://127.0.0.1"
iConf.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
iConf.Fields.Update
‘ Se asignan las propiedades de configuración al objeto
Set oMail.Configuration = iConf
oMail.To = DestinatarioCorreo
oMail.From = CuentaDesdeDondeSeEenvia
oMail.Subject = TituloConsulta
oMail.TextBody = TextoConsulta
‘ Se envía el correo
oMail.Send
‘ Se destruyen los objetos
Set iConf = Nothing
Set Flds = Nothing
Else
‘ Respuesta en caso de que no se completen todos los datos
Response.Write("Complete todos los campos para ejecutar el ejemplo")
End If
End If
%>
¿Cómo configuro la cultura en ASP – GetLocale / SetLocale?
282En programación es necesario conocer la cultura del servidor por dos grandes motivos.
1- Separación de decimales y separador de miles
Por ejemplo: 1.234,56
2- Formato de fecha
Por ejemplo: 13/06/2006 09:13:05 a.m.
Nuestros servidores Windows, por defecto, tienen la cultura:
English – United States, (en-us), 1033
Esto se puede obtener fácilmente utilizando una función en ASP llamada GetLocale()
El resultado de ésta función es un número decimal, y buscándolo en la siguiente tabla puede verse el tipo de
cultura:
Locale Description | Short String | Hex Value | Decimal Value |
---|---|---|---|
Afrikaans | af | 0x0436 | 1078 |
Albanian | sq | 0x041C | 1052 |
Arabic – United Arab Emirates | ar-ae | 0x3801 | 14337 |
Arabic – Bahrain | ar-bh | 0x3C01 | 15361 |
Arabic – Algeria | ar-dz | 0x1401 | 5121 |
Arabic – Egypt | ar-eg | 0x0C01 | 3073 |
Arabic – Iraq | ar-iq | 0x0801 | 2049 |
Arabic – Jordan | ar-jo | 0x2C01 | 11265 |
Arabic – Kuwait | ar-kw | 0x3401 | 13313 |
Arabic – Lebanon | ar-lb | 0x3001 | 12289 |
Arabic – Libya | ar-ly | 0x1001 | 4097 |
Arabic – Morocco | ar-ma | 0x1801 | 6145 |
Arabic – Oman | ar-om | 0x2001 | 8193 |
Arabic – Qatar | ar-qa | 0x4001 | 16385 |
Arabic – Saudi Arabia | ar-sa | 0x0401 | 1025 |
Arabic – Syria | ar-sy | 0x2801 | 10241 |
Arabic – Tunisia | ar-tn | 0x1C01 | 7169 |
Arabic – Yemen | ar-ye | 0x2401 | 9217 |
Armenian | hy | 0x042B | 1067 |
Azeri – Latin | az-az | 0x042C | 1068 |
Azeri – Cyrillic | az-az | 0x082C | 2092 |
Basque | eu | 0x042D | 1069 |
Belarusian | be | 0x0423 | 1059 |
Bulgarian | bg | 0x0402 | 1026 |
Catalan | ca | 0x0403 | 1027 |
Chinese – China | zh-cn | 0x0804 | 2052 |
Chinese – Hong Kong S.A.R. | zh-hk | 0x0C04 | 3076 |
Chinese – Macau S.A.R | zh-mo | 0x1404 | 5124 |
Chinese – Singapore | zh-sg | 0x1004 | 4100 |
Chinese – Taiwan | zh-tw | 0x0404 | 1028 |
Croatian | hr | 0x041A | 1050 |
Czech | cs | 0x0405 | 1029 |
Danish | da | 0x0406 | 1030 |
Dutch – The Netherlands | nl-nl | 0x0413 | 1043 |
Dutch – Belgium | nl-be | 0x0813 | 2067 |
English – Australia | en-au | 0x0C09 | 3081 |
English – Belize | en-bz | 0x2809 | 10249 |
English – Canada | en-ca | 0x1009 | 4105 |
English – Carribbean | en-cb | 0x2409 | 9225 |
English – Ireland | en-ie | 0x1809 | 6153 |
English – Jamaica | en-jm | 0x2009 | 8201 |
English – New Zealand | en-nz | 0x1409 | 5129 |
English – Phillippines | en-ph | 0x3409 | 13321 |
English – South Africa | en-za | 0x1C09 | 7177 |
English – Trinidad | en-tt | 0x2C09 | 11273 |
English – United Kingdom | en-gb | 0x0809 | 2057 |
English – United States | en-us | 0x0409 | 1033 |
Estonian | et | 0x0425 | 1061 |
Farsi | fa | 0x0429 | 1065 |
Finnish | fi | 0x040B | 1035 |
Faroese | fo | 0x0438 | 1080 |
French – France | fr-fr | 0x040C | 1036 |
French – Belgium | fr-be | 0x080C | 2060 |
French – Canada | fr-ca | 0x0C0C | 3084 |
French – Luxembourg | fr-lu | 0x140C | 5132 |
French – Switzerland | fr-ch | 0x100C | 4108 |
Gaelic – Ireland | gd-ie | 0x083C | 2108 |
Gaelic – Scotland | gd | 0x043C | 1084 |
German – Germany | de-de | 0x0407 | 1031 |
German – Austria | de-at | 0x0C07 | 3079 |
German – Liechtenstein | de-li | 0x1407 | 5127 |
German – Luxembourg | de-lu | 0x1007 | 4103 |
German – Switzerland | de-ch | 0x0807 | 2055 |
Greek | el | 0x0408 | 1032 |
Hebrew | he | 0x040D | 1037 |
Hindi | hi | 0x0439 | 1081 |
Hungarian | hu | 0x040E | 1038 |
Icelandic | is | 0x040F | 1039 |
Indonesian | id | 0x0421 | 1057 |
Italian – Italy | it-it | 0x0410 | 1040 |
Italian – Switzerland | it-ch | 0x0810 | 2064 |
Japanese | ja | 0x0411 | 1041 |
Korean | ko | 0x0412 | 1042 |
Latvian | lv | 0x0426 | 1062 |
Lithuanian | lt | 0x0427 | 1063 |
FYRO Macedonian | mk | 0x042F | 1071 |
Malay – Malaysia | ms-my | 0x043E | 1086 |
Malay – Brunei | ms-bn | 0x083E | 2110 |
Maltese | mt | 0x043A | 1082 |
Marathi | mr | 0x044E | 1102 |
Norwegian – Bokmål | no-no | 0x0414 | 1044 |
Norwegian – Nynorsk | no-no | 0x0814 | 2068 |
Polish | pl | 0x0415 | 1045 |
Portuguese – Portugal | pt-pt | 0x0816 | 2070 |
Portuguese – Brazil | pt-br | 0x0416 | 1046 |
Raeto-Romance | rm | 0x0417 | 1047 |
Romanian – Romania | ro | 0x0418 | 1048 |
Romanian – Moldova | ro-mo | 0x0818 | 2072 |
Russian | ru | 0x0419 | 1049 |
Russian – Moldova | ru-mo | 0x0819 | 2073 |
Sanskrit | sa | 0x044F | 1103 |
Serbian – Cyrillic | sr-sp | 0x0C1A | 3098 |
Serbian – Latin | sr-sp | 0x081A | 2074 |
Setsuana | tn | 0x0432 | 1074 |
Slovenian | sl | 0x0424 | 1060 |
Slovak | sk | 0x041B | 1051 |
Sorbian | sb | 0x042E | 1070 |
Spanish – Spain | es-es | 0x0C0A | 1034 |
Spanish – Argentina | es-ar | 0x2C0A | 11274 |
Spanish – Bolivia | es-bo | 0x400A | 16394 |
Spanish – Chile | es-cl | 0x340A | 13322 |
Spanish – Colombia | es-co | 0x240A | 9226 |
Spanish – Costa Rica | es-cr | 0x140A | 5130 |
Spanish – Dominican Republic | es-do | 0x1C0A | 7178 |
Spanish – Ecuador | es-ec | 0x300A | 12298 |
Spanish – Guatemala | es-gt | 0x100A | 4106 |
Spanish – Honduras | es-hn | 0x480A | 18442 |
Spanish – Mexico | es-mx | 0x080A | 2058 |
Spanish – Nicaragua | es-ni | 0x4C0A | 19466 |
Spanish – Panama | es-pa | 0x180A | 6154 |
Spanish – Peru | es-pe | 0x280A | 10250 |
Spanish – Puerto Rico | es-pr | 0x500A | 20490 |
Spanish – Paraguay | es-py | 0x3C0A | 15370 |
Spanish – El Salvador | es-sv | 0x440A | 17418 |
Spanish – Uruguay | es-uy | 0x380A | 14346 |
Spanish – Venezuela | es-ve | 0x200A | 8202 |
Sutu | sx | 0x0430 | 1072 |
Swahili | sw | 0x0441 | 1089 |
Swedish – Sweden | sv-se | 0x041D | 1053 |
Swedish – Finland | sv-fi | 0x081D | 2077 |
Tamil | ta | 0x0449 | 1097 |
Tatar | tt | 0X0444 | 1092 |
Thai | th | 0x041E | 1054 |
Turkish | tr | 0x041F | 1055 |
Tsonga | ts | 0x0431 | 1073 |
Ukrainian | uk | 0x0422 | 1058 |
Urdu | ur | 0x0420 | 1056 |
Uzbek – Cyrillic | uz-uz | 0x0843 | 2115 |
Uzbek – Latin | uz-uz | 0x0443 | 1091 |
Vietnamese | vi | 0x042A | 1066 |
Xhosa | xh | 0x0434 | 1076 |
Yiddish | yi | 0x043D | 1085 |
Zulu | zu | 0x0435 | 1077 |
También es posible cambiar este valor utilizando otra función en ASP llamada SetLocale.
Un ejemplo para cambiar la cultura sería:
SetLocale("es-ar")
¿Cómo utilizo el componente ASP Jpeg?
2El componente ASP Jpeg disponible en nuestros planes en plataforma Microsoft Windows 2003 puede utilizarse de diferentes maneras.
A continuación encontrará un ejemplo de cambio de tamaño de una imagen, muy útil para generar thumbnails para su sitio:
<%
' Se crea el objeto
Set Jpeg = Server.CreateObject("Persits.Jpeg")
' Se carga la imagen a transformar
Jpeg.Open Server.MapPath("/ejemplos/asp/test.gif")
' Nuevo largo
L = 100
' Se indican los nuevos valores
Jpeg.Width = L
Jpeg.Height = Jpeg.OriginalHeight * L / Jpeg.OriginalWidth
'Se guarda la nueva imagen
Jpeg.Save Server.MapPath("/ejemplos/asp/test_small.gif")
%>
Imagen original: (/ejemplos/asp/test.gif)<br/>
<img src="/ejemplos/asp/test.gif" border="0" /><br/><br/>
Imagen modificada: (guardada en /ejemplos/asp/test_small.gif)<br/>
<img src="/ejemplos/asp/test_small.gif" border="0" />
¿Cómo envío e-mails con ASP y el componente ASP Mail?
2El siguiente ejemplo genera un formulario y realiza las operaciones necesarias para el envio de e-mails mediante ASP y el componente ASP Mail, en plataformas Microsoft Windows 2003:
<%@LANGUAGE="VBSCRIPT" %>
<!-- Formulario para completar con los datos -->
<form action="test_aspmail.asp" method="POST">
Usuario smtp: <input type="text" value="" name="usuario"></input> <br />
(El usuario puede encontrarlo en el panel de control, E-mail, Administrar cuentas)<br/>
Contraseña smtp: <input type="password" value="" name="passwd"></input><br/>
(La contraseña de su correo electrónico)<br/>
E-mail destinatario: <input type="text" name="destinatario" width="50"></input><br/>
<input type="submit" value="Enviar e-mail" />
<input type="hidden" name="enviar" value="1"/>
</form>
<!-- Fin Formulario para completar con los datos -->
<%
' Se verifica que los datos han sido enviados desde el formulario, para la validación con el SMTP
If Request("enviar") = 1 Then
If Not Request("usuario") = "" And Not Request("passwd") = "" And Not Request("destinatario") = "" Then
Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "localhost"
Mail.Username = Request("usuario")
Mail.Password = Request("passwd")
Mail.AddAddress Request("destinatario")
Mail.From = "noreply@ferozowindows.com.ar"
Mail.FromName = "Ferozo Windows Edition"
Mail.Subject = "E-mail de prueba"
Mail.Body = "Este es un e-mail enviado desde la página de ejemplo de Ferozo Windows Edition"
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido un error: " & Err.Description
End If
Set Mail = Nothing
Else
' Respuesta en caso de que no se completen todos los datos
Response.Write("Complete todos los campos para ejecutar el ejemplo")
End If
End If
%>
</body>
</html>
¿Cómo subir archivos con ASP y el componente ASP Upload?
299Mediante el uso del componente ASP Upload, disponible en la plataforma Microsoft Windows, ud. podrá subir archivos en su sitio, a través de un formulario y un script ASP.
El siguiente ejemplo muestra el código de ambos archivos:
Archivo form.asp
<HTML>
<BODY BGCOLOR="#FFFFFF">
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="test_aspupload.asp">
<INPUT TYPE="FILE" SIZE="40" NAME="FILE1">
<INPUT TYPE=SUBMIT VALUE="Subir archivos!">
</FORM>
</BODY>
</HTML>
archivo test_aspupload.asp
<HTML>
<BODY>
<%
Set Upload = Server.CreateObject("Persits.Upload")
Count = Upload.SaveVirtual("/ejemplos")
Response.Write Count & " archivos(s) subidos correctamente en /ejemplos"
Set Upload = Nothing
%>
</BODY>
</HTML>
¿Cómo configuro la conexión a base de datos SQL Server con ASP?
277Mediante el siguiente ejemplo, puede realizarse una conexión a SQL Server con código ASP
<%
'Se crea el objeto de la conexión
set Conex = Server.CreateObject("ADODB.Connection")
'Se especifica la ubicación de la base de datos SQL Server
Conex.ConnectionString = "Provider=SQLOLEDB.1;" & _
"Data Source=.;" & _
"Integrated Security=SSPI;" & _
"Persist Security Info=False;" & _
"Initial Catalog=testconndb"
'Provider: Proveedor
'Integrated Security=SSPI: Seguridad integrada de windows
'Initial Catalog: Base de datos
'Data Source: SQL Server (. = localhost)
'Se abre la conexión y se ejecuta una consulta
Conex.Open set Rs = Server.CreateObject("adodb.recordset")
set Rs = Conex.Execute("SELECT * FROM tabla")
Response.Write Rs("Campo")
Conex.Close
'Se eliminan los objetos de la memoria
Set Rs = Nothing Set Conex = Nothing
%>
¿Que es ASP?
0Es un lenguaje de scripting del lado del servidor.
ASP (Active Server Pages) es la tecnología desarrollada por Microsoft para la creación de páginas dinámicas del servidor. ASP se escribe en la misma página web, utilizando el lenguaje Visual Basic Script o Jscript (Javascript de Microsoft).
Un lenguaje del lado del servidor es aquel que se ejecuta en el servidor web, justo antes de que se envíe la página a través de Internet al cliente. Las páginas que se ejecutan en el servidor pueden realizar accesos a bases de datos, conexiones en red, y otras tareas para crear la página final que verá el cliente. El cliente solamente recibe una página con el código HTML resultante de la ejecución de la página ASP. Como la página resultante contiene únicamente código HTML, es compatible con todos los navegadores.
El tipo de servidores que emplean este lenguaje son todos aquellos que funcionan con sistema Windows NT sobre el servidor web para el que está pensado: Internet Information Server.
Con las ASP podemos realizar muchos tipos de aplicaciones distintas. Nos permite acceso a bases de datos, al sistema de archivos del servidor y en general a todos los recursos que tenga el propio servidor. También tenemos la posibilidad de comprar componentes ActiveX fabricados por distintas empresas de desarrollo de software que sirven para realizar múltiples usos, como el envio de correo, generar gráficas dinámicamente, y muchas otras cosas.