Foros del Web » Programando para Internet » ASP Clásico »

FAQ's del foro de ASP

Estas en el tema de FAQ's del foro de ASP en el foro de ASP Clásico en Foros del Web. A veces al trabajar con ASP necesitamos insertar caracteres especiales o simbolos (con CHR) a la hora de hacer response.write o response.document, y siempre nos ...

  #61 (permalink)  
Antiguo 25/04/2003, 19:03
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 22 años, 2 meses
Puntos: 1
Aqui teneis una tabla ASCII en ASP.

A veces al trabajar con ASP necesitamos insertar caracteres especiales o simbolos (con CHR) a la hora de hacer response.write o response.document, y siempre nos volvemos locos buscando por algun libro una tabla ASCII.
Pues bien aqui teneis una tabla ASCII en ASP.

No he descubierto nada, pero quizas interese a alguien

<p align="center"><b><font face="Arial" size="5">Tabla ASCII</font><font size="5">
</font><font size="2"><br>
Estos caracteres se obtienen con la tecla ALT + Código
ASCII</font><font size="5"> </font></b></p>
<table align="center" border="1" cellpadding="1" cellspacing="0">
<tr>
<%
for conta=1 to 255
response.write("<td valign=top align=center>")
response.write(conta & "<br><b><font color=red>" & chr(conta)& "</font></b>" & "</td>")
columnas=columnas+1
if columnas mod 25=0 then response.write("</tr><tr>")
next
%>
</td></tr>
</table>

Aqui podeis ver el resultado.
http://www.expansionweb.net/asp_pruebas/ascii.asp
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net

Última edición por maestro; 26/04/2003 a las 09:55
  #62 (permalink)  
Antiguo 19/05/2003, 07:02
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 22 años, 2 meses
Puntos: 1
Imagenes almacenadas en bases de datos

Mostrar una imagen almacenada en una base de datos http://www.asptutor.com/asp/vart.asp?id=54

Subir imágenes a una Base de datos
http://www.asptutor.com/asp/vart.asp?id=129
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net

Última edición por maestro; 08/06/2003 a las 14:04
  #63 (permalink)  
Antiguo 21/05/2003, 10:43
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 21 años, 4 meses
Puntos: 0
ERRORES SQL

aca los encuentran:

http://www.forosdelweb.com/showthrea...hreadid=127085

__________________
Juan Pablo
  #64 (permalink)  
Antiguo 13/06/2003, 11:21
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 22 años, 2 meses
Puntos: 1
Leer fichero de texto y contar las palabras

<%
'Leer contenido de un fichero de texto en el servidor y contar las palabras
set FSO = Server.CreateObject("Scripting.FileSystemObject")
set oFich = FSO.OpenTextFile(Server.MapPath("prueba.txt"))
texto= replace(oFich.ReadAll,chr(13), " ")
oFich.Close
set oFich = nothing
Archivo = Split(texto," ")
for palabras = 0 to ubound(archivo)
response.write("Linea=" & palabras +1 & " - " & archivo(conta) &"<br>")
next
%>
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #65 (permalink)  
Antiguo 11/07/2003, 14:44
 
Fecha de Ingreso: febrero-2003
Ubicación: Mexico
Mensajes: 70
Antigüedad: 21 años, 2 meses
Puntos: 0
Error al conectar DB 80004005

Esta Faq les va a server de muhco ya que hay muchos errores de este tipo al momento de conectar la base de datos nos manda con diferentes mensajes este error 80004005 despues de varios dias de desvelo y que casi me cuesta mi chamba lo pude solucionar.

El numero de error 80004005 cuando lo buscas en la base de datos de Microsoft, te dice que tienes mal hecha la conexion a la base que lo cambies de tal que no tengas este error. en algunos casos funciona bien pues tenemos pocas asp por que acabamos de iniciar el sitio.

Yo tube que cambiar de proveedor de hosting y ahi fue donde todo trono y por logica no podia cambiar mas de 1000 asp en la forma que se conecta la base.

bueno para no hacerlos esperar el problema radica en la version del Driver de las bases de datos y se soluciona corriendo esta utileria en la cual se descarga el Microsoft Data Access Components (MDAC) 2.7 Service Pack 1 Refresh, el cual lo que hace es actualizar driver y no se que tantas cosas pero con eso se soluciona.

Ya no tube que modificar todo mi codigo asp de mi sitio gracias a este parche.

Espero que les ayude esto para que puedan dormir tranquilos

Saludos
__________________
Atte,

Maiden
  #66 (permalink)  
Antiguo 09/09/2003, 09:56
Avatar de epa2  
Fecha de Ingreso: abril-2002
Ubicación: Málaga
Mensajes: 1.475
Antigüedad: 22 años
Puntos: 9
¿como puedo ocultar la URL de un ARCHIVO?
NOTA: Este ejemplo sirve para archivos de extensión zip, pero cambiando SOLO una línea de código, podeis usar CASI cualquier archivo


CREDITOS: ESTE CODIGO HA SIDO CREADO, PROBADO Y DESARROLLADO UNICA Y SOLAMENTE POR EPA5 (Fran Rubio). Se permite su uso libremente.

Bueno amigos, primeramente teneis que escribir un archivo que se llama file.inc y dentro poneis el siguiente código

Código:
<%
Public Const ForReading = 1 'Abrir un archivo como sólo lectura. No se puede escribir en este archivo. 
Public Const ForWriting = 2 'Abrir un archivo para escribir. Si existe un archivo con el mismo nombre, se sobrescribe el contenido anterior. 
Public Const ForAppending= 8 'Abrir un archivo y escribir al final del mismo. 

Public Const TristateUseDefault = 2 'Abrir el archivo utilizando el valor predeterminado del sistema. 
Public Const TristateTrue = 1 'Abrir el archivo como Unicode. 
Public Const TristateFalse = 0 'Abrir el archivo como ASCII.

Public Const adTypeBinary = 1 'Indica datos binarios. 
Public Const adTypeText = 2 'Valor predeterminado. Indica datos de texto, en el juego de caracteres especificado en Charset. 

Public Const MIME_ZIP = "application/x-zip-compressed"

'aPath: Camino al archivo
'save: Nombre del archivo que sera guardado
'mime: Tipo MIME del archivo
Public Sub sendFile(aPath, save, mime)
	Dim fs,f, ts, dat(512), aFile, o
	aFile=Server.Mappath(aPath)
	Response.Clear
	Response.ContentType = MIME_ZIP
	Response.Buffer = True
	set o = Server.CreateObject("ADODB.Stream")
	o.Type = adTypeBinary 
	o.Open
	o.LoadFromFile(aFile)
	Response.AddHeader "content-disposition", "attachment;filename=" & save
	Response.BinaryWrite o.Read
	o.Close
	Set o = Nothing
	Response.End
End Sub
%>
y luego, por último en la página donde entra los usuarios para bajarse el archivo poneis lo siguiente...

ejemplo de donwload.asp


Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<%Option Explicit%>

<!-- #include file="file.inc" -->


<%
	'AKI, EL PRIMER PARAMETRO ES LA RUTA DEL ARCHIVO ZIP Y EL SEGUNDO PARAMETRO EL NOMBRE
	'QUE LE QUERAMOS PONER AL ARCHIVO ZIP QUE SE LEERÁ CUANDO SE DESCARGUE.

	sendFile "../../descargas/Demo.zip", "Mi_mejor_demo.zip", MIME_ZIP
	
%>
Bueno, ya me contareis algún día si os sirve de algo.

Un salu2
__________________

***Aprendiz de todo y maestro de nada***
  #67 (permalink)  
Antiguo 06/11/2003, 11:56
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
.- Agilizando la carga de tus páginas ASP

P: ¿Como puedo agilizar la carga de mis páginas en ASP?

R:En muchos casos, estas cargan lentamente ya que están programadas con algunos errores que llevan a sobrecargar los recursos del servidor dejando el sitio sin funcionar o con escasos recursos.

Estado de las sesiones (Session State)
Si no vamos a utilizar ninguna variable de tipo session dentro del sitio, podemos deshabilitarlas. Debemos ubicar las siguientes líneas al principio del archivo .asp:

<%
@ language = "VBScript"
ENABLESESSIONSTATE = False
%>

Response.Buffer
Esta línea le dirá al Servidor que ejecute todo el código después de enviar cualquier información al cliente.

<%
Response.Buffer = True
%>

Cerrar las conexiones y recordsets
Cuando realizamos cualquier tipo de conexión debemos
asegurarnos de cerrarla al finalizar el script. Además de practicar la codificación en ASP nos permite prevenir la corrupción de una base de datos Access.

<%
recorset.close
conexion.close
set recordset=Nothing
set conexion=Nothing
%>

Option Explicit
Usando esta opción es posible debuguear los scripts más rápidamente. Además ayudará a aprender a la fuerza la codificación en ASP, ya que habilitando esta opción deberemos declarar todas las variables.

<%
OPTION EXPLICIT
%>

Última edición por ACHAVARRIA; 07/11/2003 a las 16:12
  #68 (permalink)  
Antiguo 06/11/2003, 11:57
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Gráficos de barras con ASP

La idea es realizar gráficos de barras horizontales y verticales, podemos utilizar estos gráficos para mostrar estadísticas o resultados de encuestas o votaciones de forma mas vistosa, para que vean como quedaría este ejemplo aplicado les muestro este gráfico...

CODIGO FUENTE

<p>Gráfico Horizontal</p>
<table width="100%" border="0" cellspacing="2" cellpadding="0">
<tr><td>
<%
Dim ancho
ancho = 240
Response.Write ("<img src=azul.gif width=" & ancho & " height=20>")
%>
</td></tr>
<tr><td>
<%
ancho = 140
Response.Write ("<img src=rojo.gif width=" & ancho & " height=20>")
%>

</td></tr>
<tr><td>
<%
ancho = 270
Response.Write ("<img src=verde.gif width=" & ancho & " height=20>")
%> </td></tr>
</table>

El código ASP si se fijan esta mezclado con una tabla de 3 renglones (rows) y una columna (cols) obviamente si queremos hacer un gráfico horizontal debemos colocar las imágenes en los renglones de la tabla e ir modificando mediante código ASP su propiedad "width"...

<%
Dim ancho
ancho = 240
Response.Write ("<img src=azul.gif width=" & ancho & " height=20>")
%>

Observen que "ancho" es una variable a la cual le dimos un valor de 240, y de que sirve? quizás a simple vista no se dan cuenta pero esa variable "ancho" puede ser el valor de un campo que hay en una base de datos el cual puede ir cambiando dinámicamente según el contexto, por ejemplo si trabajamos con un sistema de votación el valor de "ancho" seguramente ira variando a lo largo que se van desarrollando las votaciones. Quizás les sea mas cómodo un gráfico vertical, pues aquí el código...

<p>Gráfico Vertical</p>
<table width="19%" border="0" cellspacing="2" cellpadding="0" height="10">
<tr valign="bottom">
<td height="2">
<% Dim alto
alto = 120
Response.Write ("<img src=azul.gif width=50 height=" & alto & ">")
%>
</td>
<td height="2">
<%
alto = 54
Response.Write ("<img src=rojo.gif width=50 height=" & alto & ">")
%>
</td>
<td height="2">
<%
alto = 60
Response.Write ("<img src=verde.gif width=50 height=" & alto & ">")
%>
</td>
</tr>
</table>

Aquí es lo mismo que en el gráfico anterior pero en ves de poner los gráficos en los 3 renglones creamos una tabla de 1 renglón y 3 columnas y en estas colocamos los gráficos, otro cambio es que en ves de modificar la propiedad "width" modificamos "height".
  #69 (permalink)  
Antiguo 07/11/2003, 08:05
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Como Detectar un plugin de Flash con ASP

Con la función isObject de ASP podremos saber si el usuario tiene instalado un objeto determinado.

Para determinar si el reproductor Shockwave Flash está o no instalado, deberemos utilizar el siguiente código:

<%
if isObject(createObject("ShockwaveFlash.ShockwaveFla sh")) then
flash = "Flash está instalado"
else
flash = "Flash no está instalado"
end if

response.write flash
%>
  #70 (permalink)  
Antiguo 07/11/2003, 08:15
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Como 'Banear' Visitantes Molestos

Hay una solución basada en puro código ASP para "banear" (to ban, echar fuera) algún visitante molesto al más puro estilo IRC de vuestras páginas.

Si conocéis su IP (que se puede sacar de los logs del servidor), podéis poner el siguiente código:


<%
'La IP es sólo un ejemplo!!!
if Request.ServerVariables("REMOTE_ADDR")="200.200.14 .3.2" then
Response.Buffer=True
Response.Status=("401 Unauthorized")
Response.End
end if
%>

Que comprobará su IP con la que no queremos, y le expulsará si es igual. ¡Perro guardián en ASP!
  #71 (permalink)  
Antiguo 07/11/2003, 08:20
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Usa OLEDB en lugar de ODBC

Cuando salió ASP e incluso hoy en día todo el mundo utiliza ODBC (con y sin DSN) para conectarse a una base de datos. Uno de los mayores motivos es que todos los ejemplos de código usan ODBC. Bien, aunque es correcto, OLEDB está aquí ya y es más rápido, más estable y lo más importante: funciona con prácticamente todo tu código anterior.

Simplemente hay que cambiar la cadena de conexión. Si antes tenías:

"DSN=nombredsn"
ó
"DBQ=C:\data\basedatos.mdb; DRIVER={Microsoft Access Driver (*.mdb)}"

tienes que cambiarlo por:
"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\data\database.mdb;"
o en caso de usar SQL Server:
"Provider=SQLOLEDB; Data Source=sql_server; Initial Catalog=sql_database; User Id=username; Password=password;"
  #72 (permalink)  
Antiguo 07/11/2003, 08:23
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Caché de páginas ASP y proxys

Por defecto los proxys no almacenan en caché los contenidos dinámicos de una página ASP. Esto está bien para una página que cambie habitualmente, pero para páginas que no cambien apenas o scripts que sean "librerías", permitir que se almacenen en caché incrementará la velocidad para usuarios que naveguen a través de un proxy.

Para hacer que una ASP sea cacheada, pon la siguiente línea al principio del script:

<%Response.CacheControl = Public %>

Notarán la diferencia.
  #73 (permalink)  
Antiguo 07/11/2003, 08:32
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Como utilizar el CreateObject o <OBJECT>

Aunque quizá no lo hayáis visto nunca, hay dos formas de crear un objeto de un componente de servidor. Una es la que hemos usado el 99.9% de la veces:

set oRS=Server.CreateObject("ADODB.Recordset")

Y la otra es escribiendo (fuera del código ASP) la marca HTML <OBJECT> con el atributo que indica dónde se ejecuta puesto a Server. De esta forma:

<OBJECT RUNAT=Server ID=oRS ProgID="ADODB.Recordset"></OBJECT>

¿Hay alguna diferencia? Sí, la hay, y permite ahorrar algo de recursos del servidor con el segundo método.

Cuando utilizamos el método Server.CreateObject, el servidor reserva el espacio, memoria, etc. que necesita el objeto en ese mismo momento. En cambio, utilizando la marca <OBJECT> el servidor reservará todo esto cuando SEA LLAMADO EL PRIMER MÉTODO O LA PRIMERA PROPIEDAD del objeto. Piensa en el típico script que abre una conexión a bd y al final, después de verificar los datos, no la utiliza y la cierra sin más. Utilizando la segunda forma, no habríamos gastado ni un solo byte de memoria.

Por cierto, si utilizáis la segunda forma, NO TENES que usar al final oRS.Close, simplemente poned set ORS=nothing. Peculiaridades de <OBJECT>.
  #74 (permalink)  
Antiguo 07/11/2003, 13:25
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Como realizo una conexion a base de datos ??

CONEXIONES DISPONIBLES EN :


http://www.connectionstrings.com/
  #75 (permalink)  
Antiguo 07/11/2003, 13:31
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Como Utilizar el componente AspEmail ?

¿Qué es AspEmail?

AspEmail es un componente realizado por la empresa Persits Software Inc. que permite el envío de emails a través de las páginas web ASP. Soporta múltiples recipientes, CC, BCC, archivos adjuntos, formato html, imágenes, entre otros.

Requerimientos

Para hacerlo funcionar se necesita instalar sobre plataforma Windows (95/98/Nt/2000) y contar con un servidor SMTP para el envío de los emails. También hay requerimientos específicos como: Internet Information Server 3.0, 4.0 o 5.0 y Active Server Pages, o Personal Web Server en cualquier versión, o hasta Visual Basic, Visual C++, o cualquier otro paquete con soporte de componentes COM.

Instalación

Para bajar el componente debemos dirigirnos a www.aspemail.com/download.html y descargamos la versión que se ajuste a nuestras necesidades.

Al ejecutar el archivo Aspemail.exe se iniciará el programa de instalación del mismo, en donde entre otras cosas elegimos el directorio en donde instalar el componente, en nuestro caso elegimos c:\AspEmail. Una vez instalada se habrá copiado a nuestro sistema la librería correspondiente. Para registrarla solo ejecuta lo siguiente en el DOS o en Ejecutar del menú Inicio:

c:\regsvr32 c:\AspEmail\Bin\AspEmail.dll

Junto a AspEmail viene incluida una versión de evaluación del componente AspUpload, el cual permite subir archivos hacia el servidor. Para registrar el AspUpload ejecuta de la misma forma que el anterior:

c:\regsvr32 c:\AspEmail\Bin\AspUpload.dll

AspUpload no necesita que esté registrado el AspEmail.

Usando AspEmail

Como en todos los componentes que forman parte de una página Asp es necesario crear el objeto que se va a utilizar:

<%
...
Set Mail = Server.CreateObject("Persits.MailSender")
...
%>

Luego se crea la instancia del objeto:

Para enviar emails desde las páginas ASP se debe especificar el servidor SMTP a utilizar:

Mail.Host = "smtp.tuservidor.com"
Mail.Port = 25 ' Opcional: El puerto predeterminado es 25

Luego se debe especificar las direcciones de envío y en forma opcional, el nombre:

Mail.AddAddress "[email protected]", "WebExperto"
Mail.AddCC "[email protected]", "Fabian Muller" ' El campo CC, Bcc, son opcionales

Se usan las propiedades Subject y Body para especificar el Asunto y Cuerpo del mensaje, respectivamente. El cuerpo puede ser en modo texto o modo html, en este caso se declara la propiedad IsHTML con el valor True.

Mail.Subject "Consulta desde la pagina"
Mail.Body "Aquí iría el cuerpo del mensaje, el cual llegara a los recipientes antes mencionados"

O en formato Html:

Mail.Subject "Consulta desde la pagina"
Mail.Body "<html><body>Se pueden especificar las etiquetas html, como por ejemplo texto en <b>negrita</b> o <i>cursiva</i> y hasta tablas.</body></html>"
Mail.IsHTML = True

Para enviar un archivo adjunto se utiliza el método AddAttachement. Se debe especificar la ruta completa del archivo a adjuntar:

Mail.AddAttachement "c:\directorio\archivo.ext"

Y por último hay que enviar el mensaje, con el método Send. Se puede especificar, que en caso de producirse un error, continúe el programa y muestre el error:

On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido el siguiente error: " &Err.Description
End If

Ejemplo de envío de email a partir de un formulario

Un ejemplo del uso que se le puede dar al AspEmail es el de envío de formularios. En el siguiente ejemplo veremos un formulario y en archivo sendmail.asp que procesará el formulario y enviará el email correspondiente:

<form method="POST" action="sendmail.asp">
<p>De:<br>
<input type="text" name="de" size="20"></p>
<p>Para:<br>
<input type="text" name="para" size="20"></p>
<p>Asunto:<br>
<input type="text" name="asunto" size="20"></p>
<p>Mensaje:<br>
<textarea rows="2" name="mensaje" cols="20"></textarea></p>
<p><input type="submit" value="Enviar" name="enviar"></p>
</form>

Sendmail.asp

<%
'Recogemos los datos del formulario
de = Request.Form("de")
para = Request.Form("para")
mensaje = Request.Form("mensaje")
asunto = Request.Form("asunto")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "mail.tusitio.com"
Mail.From = de
Mail.AddAddress para

Mail.Subject = asunto

'El mensaje en formato html
Mail.IsHTML = True
Mail.Body = "<HTML><BODY><p><font face=verdana size=2>De: "&de&"<br>Mensaje: "&mensaje&"<br><br></p><br>Enviado el "& Now() &"</font></BODY></HTML>"

On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido el siguiente error: " &Err.Description
End If
%>

Próximamente

Más adelante, escribiremos artículos sobre como enviar archivos adjuntos, utilizar con bases de datos, y también veremos el componente AspUpload.
  #76 (permalink)  
Antiguo 11/11/2003, 05:41
 
Fecha de Ingreso: enero-2002
Ubicación: Burgos, España
Mensajes: 116
Antigüedad: 22 años, 3 meses
Puntos: 0
El enlace de la FAQ 9 no funciona
  #77 (permalink)  
Antiguo 04/12/2003, 11:51
yanezes
Invitado
 
Mensajes: n/a
Puntos:
Foro en Castellano

...y un buen foro en castellano conoces?
  #78 (permalink)  
Antiguo 04/12/2003, 11:52
yanezes
Invitado
 
Mensajes: n/a
Puntos:
...y un buen foro en castellano conoceis?
  #79 (permalink)  
Antiguo 11/12/2003, 16:00
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
UTILIZANDO JAVA EN LAS PAGINAS ASP

P: ¿COMO PUEDO UTILIZA JAVA EN MIS PAGINAS ASP?
R:/

En primer lugar deberás crear y compilar la clase. Para ello utiliza tu editor de textos habitual. Para compilar la clase deberás tener instalado el JDK de Sun.

Crea el archivo "testJava.java". Deberás tener en cuenta que los métodos que quieres que sean accesibles desde la página ASP deben ser públicos.

public class javaTest {
public String bienvenida() {
return "Bienvenido al ejemplo de ASP y Java";
}
}

A continuación deberás compilarlo, por ejemplo, mediante el programa "javac" del JDK. Ejecútalo desde línea de comandos mediante la siguiente sentencia:

c:\jdk1.2.2\bin> javac javaTest.java
Como resultado, de esta acción tendrás la clase compilada en un archivo "testJava.class"

Instalar la clase

Para instalar la clase y hacerla accesible desde tu página ASP, deberás copiarla en el directorio de clases de tu ordenador (denominado habitualmente CLASSPATH). En sistemas windows 95/98 este directorio se encuentra en la siguiente ruta: "c:\windows\java\classes\"

Para conocer la ruta del classpath en tu sistema puedes acceder al registro de windows y buscar la cadena de texto "classpath". Recuerda que puedes abrir citado registro mediante la opción ejecutar del menú Inicio e introduciendo el texto "regedit". Una vez estes en el editor del registro pulsa F3 para visualizar la ventana de búsqueda.

Crear la página ASP

Para finalizar el proceso tan solo falta crear la página ASP que utilizará la clase Java creada anteriormente.

Se utilizará la función de VBScript denominada GetObject y se llamará a los métodos que la clase tenga implementados.

<html>
<head>
<title>Ejemplo de ejecución de código java desde ASP</title>
</head>
<body>
<%
Dim javaTestObj
set javaTestObj = GetObject("java:javaTest")
%>

Este texto lo escribe el método bienvenida de la clase javaTest:<br>
<%
response.write javaTestObj.bienvenida()
%>

<% set javaTestObj = nothing %>

Última edición por ACHAVARRIA; 11/12/2003 a las 16:08
  #80 (permalink)  
Antiguo 12/12/2003, 16:20
ACHAVARRIA
Invitado
 
Mensajes: n/a
Puntos:
Usando ASPLOAD

P:¿Cómo usar AspUpload?

R:/ Ejemplo explicativo:

Para usar AspUpload, precisa de un archivo HTML conteniendo un formulario y de un script ASP que se encarga de gestionar el anterior.

El código siguiente correspondería a un archivo HTML con el formulario para la subida de dos archivos al servidor:

<HTML>
<BODY BGCOLOR="#FFFFFF">

<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="Upload.asp">

<INPUT TYPE=FILE SIZE=60 NAME="FILE1"><BR>
<INPUT TYPE=FILE SIZE=60 NAME="FILE2"><BR>
<INPUT TYPE=FILE SIZE=60 NAME="FILE3"><BR>
<INPUT TYPE=SUBMIT VALUE="Upload!">

</FORM>

</BODY>
</HTML>

Tenga en cuenta que precisa especificar el atributo ENCTYPE="multipart/form-data" , dado que indica que se envíe el contenido del archivo y no sólo el nombre. Si no lo hace así, no le funcionará el upload de ficheros.

Veamos ahora cómo sería el script asociado Upload.asp:


<HTML>
<BODY>

<%

Set Upload = Server.CreateObject("Persits.Upload.1")
Count= Upload.Save("d:\xvrt\midominio.com\html\upload")

%>
<% = Count %> ficheros subidos.

</BODY>
</HTML>

La primera línea del script crea la instancia del objeto. Luego se llama al método Save, que es el que realmente realiza el trabajo de upload. El método devuelve el número de ficheros subidos con éxito. En caso de error, devuelve una excepción.

Algunas características especiales

Esta versión del componente, ofrece algunas mejoras frente a sus predecesoras:

Soporte completo para ADO. Le permite usar estos objetos para insertar/extraer ficheros en bases de datos.

Paso automático de Mac a PC. Se detecta si la subida del archivo se hace desde un Mac y realiza una conversión.

Extracción del tamaño de imágenes. Determina el tamaño de imágenes JPEG, BMP y gif.

Nuevas propiedades y métodos como File.SaveAs o Upload.OpenFile

Última edición por ACHAVARRIA; 12/12/2003 a las 16:23
  #81 (permalink)  
Antiguo 20/03/2004, 10:38
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 5 meses
Puntos: 0
Sacar una serie de n números aleatorios, distintos entre sí dentro de un rango de valores.

Primero, las funciones a utilizar, que son tres:
Código:
'####################
'# Funciónes creadas por Isaí/Meruelo
'# Optimizadas por meruelo
'####################

Function RanNum(inicio, fin)
 Randomize()
  RanNum = Int((fin - inicio + 1) * Rnd + inicio)
End Function

Function chkRan(num, pos)
p = val_inicial
 Do while p <= val_final
  For d=0 To d=9
   If arreglo(d)=num then
     arreglo(pos) = RanNum(val_inicial, val_final)
      p = 1
   Else
     chkRan = num
      p = p + 1
   End if
  Next
 Loop
End Function

Function getArray(val_inicial, val_final)
indice_elem_actual=0
Do While indice_elem_actual<=numero_elementos
	numero=RanNum(val_inicial,val_final)
	For j=0 To (numero_elementos)
		If arreglo(j)=numero Then
			numero=RanNum(val_inicial,val_final)
			j=0
		End If
	Next
	arreglo(indice_elem_actual)=chkRan(numero, pos)
	indice_elem_actual=indice_elem_actual+1
Loop
End Function
Despues, simplemente, definir el arreglo
Código:
Dim arreglo()
Y, como ejemplo, crear un bucle para mostrar todos los números que saca

Código:
 i = 0
   numero_elementos= 4
	Redim arreglo(numero_elementos)
	      call getArray(1, numero_límite)
	          Do While i < numero_elementos
                              response.write arreglo(i)
                                  i = i + 1
                          Loop
__________________
Tu portal de manga y anime.
  #82 (permalink)  
Antiguo 01/04/2004, 09:45
 
Fecha de Ingreso: marzo-2004
Ubicación: Extremadura
Mensajes: 92
Antigüedad: 20 años, 1 mes
Puntos: 0
P: ¿Como puedo mostrar una lista de usuarios y que al hacer click en uno me muestre todos sus datos?

R: Primero necesitaremos una pagina asp donde saquemos todos los usuarios de una tabla de la BD.

<%
Set Conexion=Createobject("ADODB.Connection")
Conexion.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;Jet OLEDB:Database Password='pass';DATA SOURCE=" & server.mappath("base.mdb") & ";"

sql="Select * from usuarios"
set rsusuarios=conexion.execute(sql)
do while not rsusuarios.eof %>
<p align="left">
<font face=Verdana size=3 color="#009900"><a href=datos.asp?Nick=<% response.write(rsusuarios.Fields("nick")) %>><%response.write(rsusuarios("Nick"))%></a></font><br>

<% rsusuarios.movenext
loop
%>

Esto nos mostraria uno a uno todos los nicks de todos los usuarios y al hacer click nos llevara a datos.asp en la que tenemos que tener:

<%
Set Conexion=Createobject("ADODB.Connection")
Conexion.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;Jet OLEDB:Database Password='pass';DATA SOURCE=" & server.mappath("base.mdb") & ";"
ordensql="Select * from Datos_Usuarios where Nick='" & request.querystring ("Nick") & "'"

set rsusuarios=conexion.execute(ordensql)

%>

<p>Nick: <% response.write(rsusuarios.fields(0)) %></p>
<p>Nombre: <% response.write(rsusuarios.fields(1)) %></p>
<p>Apellidos: <% response.write(rsusuarios.fields(2)) %></p>
<p>Edad: <% response.write(rsusuarios.fields(3)) %></p>
<p>Email: <% response.write(rsusuarios.fields(4)) %></p>
<p>Ubicación: <% response.write(rsusuarios.fields(5)) %></p>

Y asi nos mostraria los datos sencillamente, luego kada kual puede darse su toke pa ke kede bonito porke esto asi es una mierdecilla jeje. Espero que os sirva de ayuda
__________________
Aupa Athletik!!!
  #83 (permalink)  
Antiguo 20/04/2004, 20:04
Avatar de buliwyf  
Fecha de Ingreso: diciembre-2001
Ubicación: Caracas
Mensajes: 221
Antigüedad: 22 años, 3 meses
Puntos: 1
scramble, shuffle o reordenar un string

a lo mejor a alguien le es util esto.

<%
function scramble(valor)
Randomize
textonuevo=len(valor)
do until textonuevo=0
r=Int((textonuevo - 1 + 1) * Rnd + 1)
nvalor=nvalor&Mid(valor,r,1)&","
valor=replace(valor,Mid(valor,r,1),"",1,1)
textonuevo=textonuevo-1
loop
scramble=nvalor
end function
%>
<%=scramble("aquivacualquiertextoquequierasreorden ar")%>

saludos
__________________
RTFM antes de preguntar...

Última edición por buliwyf; 21/04/2004 a las 06:40
  #84 (permalink)  
Antiguo 04/05/2004, 07:55
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 2 meses
Puntos: 2
Validacion Avanzada de E-mail


Código PHP:
<%
'Funcion que comprueba si un e-mail es valido. Devuelve:
-> si es nulo o esta vacio
' 1 -> Si el e-mail es incorrecto
-> Si el e-mail es valido

Function Validar_EMail(EMail)

Dim Con

If EMail "" Then
    Validar_EMail 
0
    
Exit Function
End If

EMail LCase(EMail)

If (
Left(EMail1) = "." Or Left(EMail1) = "@"Then
    Validar_EMail 
1
    
Exit Function
End If

If (
Right(EMail1) = "." Or Right(EMail1) = "_" Or _
    Right
(EMail1) = "@"Then
    Validar_EMail 
1
    
Exit Function
End If

Con 0

For 1 To Len(EMail)
    If (
Mid(EMaili1)) = "@" Then
       Con 
Con 1
    End 
If
Next

If Con Or Con 0 Then
    Validar_EMail 
1
    
Exit Function
End If

Con 0

For 1 To Len(EMail)
    If (
Mid(EMaili1)) = "@" Then
       
For i To Len(EMail)
          If (
Mid(EMailj1)) = "." Then
             Con 
Con 1
          End 
If
       
Next
    End 
If
Next

If Con 1 Then
    Validar_EMail 
1
    
Exit Function
End If

Con 0

For 1 To Len(EMail)
    If (
Mid(EMaili1) = ".") Or (Mid(EMaili1) = "@"Then
       
If (Mid(EMail11) = ".") Or (Mid(EMail11) = "@"Then
          Validar_EMail 
1
          
Exit Function
       
End If
    
End If
Next

For 1 To Len(EMail)
    If (
Mid(EMaili1) < "a" Or Mid(EMaili1) > "z") And _
       
(Mid(EMaili1) < "0" Or Mid(EMaili1) > "9") And _
       Mid
(EMaili1) <> "." And Mid(EMaili1) <> "_" And _
       Mid
(EMaili1) <> "@" Then
          Validar_EMail 
1
          
Exit Function
    
End If
Next

Validar_EMail 
2

End 
Function
%> 
formulario:

Código PHP:
<!-- #Include File="ValidarEmail.asp"-->
<%
if 
request.form("envio") = "envio" then
   
if Validar_EMail(Request.form("correo")) = 0 then response.write "Nulo o Vacio"
   
if Validar_EMail(Request.form("correo")) = 1 then response.write "Email inválido"
   
if Validar_EMail(Request.form("correo")) = 2 then response.write "Email válido"
end if
%>
<
BR>
<
FORM METHOD="post" ACTION="verificar.asp">
<
INPUT NAME="correo">
<
INPUT TYPE="Submit">
<
INPUT TYPE="Hidden" NAME="envio" VALUE="envio">
</
FORM
__________________
Manual de ASP Avanzado ;-)
  #85 (permalink)  
Antiguo 21/05/2004, 07:57
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Includes condicionados

<%
select case request("id")
case 1
%>
<!--#include file="includes/email_insertar.inc" -->
<% case n %>
<!--#include file="includes/email_insertar.inc" -->
<%
end select
%>
  #86 (permalink)  
Antiguo 03/06/2004, 08:05
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Error al usar BookMarks

Como solucionar el error:
"Current Recordset does not support bookmarks. This may be a limitation of the provider or of the selected cursortype"

Definir el recordset con:
CursorLocation = adUseClient

Gracias a unholy.

Última edición por Myakire; 03/06/2004 a las 08:07 Razón: Falta de ortografía
  #87 (permalink)  
Antiguo 22/06/2004, 13:50
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
paso de parámetros a un reporte en Crystal

ValerioJ en un post compartió esto:

Cómo pasar parámetros a un archivo.rpt es así:

http://localhost/reportes/mireporte...54&PROMPT2=2004

empieza desde 0 1 2 3 n parámetros. Espero les sirva de algo.


Gracias a ValerioJ Venezuela.
  #88 (permalink)  
Antiguo 06/07/2004, 09:17
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Solución a Server Application Error

Cuando al momento de ejecutar páginas ASP el IIS solo lanza el error antes mencionado nos podemos enfrascar en eternas reinstalciones del IIS.

Para solucionar esto es necesario irse al IIS en Herramientas Administrativas, seleccionar el sitio Web predeterminado -> propiedades -> Directorio Particular -> Protección de aplicación y seleccionar "Baja" (proceso IIS).
  #89 (permalink)  
Antiguo 13/08/2004, 10:39
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 20 años, 11 meses
Puntos: 5
De acuerdo Propiedades de un SWF con ASP

hola a todos.... solo era para cooperar con el foro y compartir los conocimientos con los demas....
aqui les dejo una funcion interesante para conseguir las propiedades de un archivo en flash (.swf).

lo unico malo es que funciona bien para las versiones menores a la 6. esto es cuando exportan el archivo desde el macromedia flash le colocan la opcion que diga version y alli colocan una menor a la 6. eso es lo unico malo que encontre del codigo, por lo demas esta excelente.... sacas el ancho, alto, version, framerate, etc. del swf....

aqui esta el codigo.... los tranfsforme a una funcion para mejor facilidad de uso. el mismo tiene un include .inc.

ok


swfheaderdump.inc

Código:
<%
'-------------------------------------------------------------
'  Create Date : 17/10/2001 (dd/mm/yyyy)
'  Mod. Date   : 17/10/2001
'  Author      : Claudio Heidel ([email protected])
'-------------------------------------------------------------

Class SWFDump

  Private header
  Private RECTdata
  Private nBits
  Private mversion
  Private mfilelen
  Private mxMin
  Private mxMax
  Private myMin
  Private myMax
  Private mheigt
  Private mwidth
  Private mframerate
  Private mframecount

  Private Sub Class_Initialize()

  End Sub

  Private Sub Class_Terminate()

  End Sub


  Private Function ReadHeader (filename)
     Const ForReading = 1, ForWriting = 2, ForAppending = 8
     Dim fso, f
     Set fso = CreateObject("Scripting.FileSystemObject")
     Set f = fso.OpenTextFile(filename, ForReading)
     ReadHeader = f.Read(21)
  End Function

  Private Function ToBin(inNumber, OutLenStr )
    Dim binary
    binary = ""
    do while inNumber >= 1
      binary = binary & inNumber mod 2
      inNumber = inNumber \ 2
    loop
    binary = binary & String(OutLenStr - len(binary), "0")
    ToBin = StrReverse(binary)
  End Function

  Private Function Bin2Decimal(inBin)
    Dim counter
    Dim temp
    Dim Value
    inBin = StrReverse(inBin)
    temp = 0
    For counter = 1 to Len(inBin)
      If counter = 1 then
        Value = 1
      Else
        Value = Value  * 2
      End If
      temp = temp + mid(inBin, counter ,1)  *  Value
    Next
    Bin2Decimal = temp
  End Function

  Public Function SWFDump(fileName)

    header = ReadHeader (fileName)
    mversion = asc(mid(header,4,1))
    mfilelen = asc(mid(header,5,1))
    mfilelen = mfilelen + asc(mid(header,6,1)) * 256
    mfilelen = mfilelen + asc(mid(header,7,1)) * 256 * 256
    mfilelen = mfilelen + asc(mid(header,8,1)) * 256 * 256 * 256

    RECTdata = ToBin(asc(mid(header,9,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,10,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,11,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,12,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,13,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,14,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,15,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,16,1)),8)
    RECTdata = RECTdata & ToBin(asc(mid(header,17,1)),8)

    nBits = Mid(RECTdata,1,5)
    nBits = Bin2Decimal(nBits)

    mxMin =  Bin2Decimal(Mid(RECTdata,6,nBits))
    mxMax =  Bin2Decimal(Mid(RECTdata,6 + nBits * 1 ,nBits))
    myMin =  Bin2Decimal(Mid(RECTdata,6 + nBits * 2 ,nBits))
    myMax =  Bin2Decimal(Mid(RECTdata,6 + nBits * 3 ,nBits))

    mheigt = round((myMax - myMin) / 20)
    mwidth = round((mxMax - mxMin) / 20)

    mframerate = asc(mid(header,18,1))

    mframecount = asc(mid(header,19,1))
    mframecount = mframecount + asc(mid(header,20,1)) * 256

  End Function


  Public Property Get Heigt()
    Heigt = mheigt
  End Property

  Public Property Get Width()
    Width = mwidth
  End Property

  Public Property Get Version()
    Version = mversion
  End Property

  Public Property Get FileLen()
    FileLen = mfilelen
  End Property

  Public Property Get xMin()
    xMin = mxMin
  End Property

  Public Property Get xMax()
    xMax = mxMax
  End Property

  Public Property Get yMin()
    yMin = myMin
  End Property

  Public Property Get yMax()
    yMax = myMax
  End Property

  Public Property Get Framerate()
    Framerate = mframerate
  End Property

  Public Property Get Framecount()
    Framecount = mframecount
  End Property
End Class
%>

la funcion


Código:
function FlashDimension(path, archivo, tipo)
		set myObj = new swfdump
		myObj.SWFDump (Server.MapPath(path & archivo))
		
		select case lcase(tipo)
			case "w":
				out = myObj.Width
			case "h":
				out = myObj.Heigt
			case "version":
				out = myObj.Version
			case "fileLen":
				out = myObj.FileLen
			case "xmin":
				out = myObj.xMin
			case "xmax":
				out = myObj.xMax
			case "ymin":
				out = myObj.yMin
			case "ymax":
				out = myObj.yMax
			case "framerate":
				out = myObj.FrameRate
			case "framecount":
				out = myObj.FrameCount
			case else:
				out = "Alto: " & myObj.Heigt & " pixeles<br>"
				out = out & "Ancho: " & myObj.Width & " pixeles<br>"
				out = out & "Version: " & myObj.Version & "<br>"
				out = out & "Peso: " & myObj.FileLen & " bytes<br>"
				out = out & "xMin: " & myObj.xMin & "<br>"
				out = out & "xMax: " & myObj.xMax & "<br>"
				out = out & "yMin: " & myObj.yMin & "<br>"
				out = out & "yMax: " & myObj.yMax & "<br>"
				out = out & "FrameRate: " & myObj.FrameRate  & "<br>"
				out = out & "Total de Frames: " & myObj.FrameCount & "<br>"
		end select
	
	FlashDimension = out
	
	set myObj = nothing
end function
cualquier comentario solo avisen....
si tienen uno mejor... bienvenido sea... estamos para compartir y aprender

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #90 (permalink)  
Antiguo 13/08/2004, 10:42
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 20 años, 11 meses
Puntos: 5
De acuerdo Encryptar y Desencryptar Password

hola....
aqui hay un codigo encriptador....
funciona perfectamente.... espero les sirva

saludos

Código:
<%
	Base64Chars =	"ABCDEFGHIJKLMNOPQRSTUVWXYZ" & _
				"abcdefghijklmnopqrstuvwxyz" & _
				"0123456789" & _
				"+/"
				
	Public Function EncodeStr(byVal strIn)
		Dim c1, c2, c3, w1, w2, w3, w4, n, strOut
		For n = 1 To Len(strIn) Step 3
			c1 = Asc(Mid(strIn, n, 1))
			c2 = Asc(Mid(strIn, n + 1, 1) + Chr(0))
			c3 = Asc(Mid(strIn, n + 2, 1) + Chr(0))
			w1 = Int(c1 / 4) : w2 = (c1 And 3) * 16 + Int(c2 / 16)
			If Len(strIn) >= n + 1 Then 
				w3 = (c2 And 15) * 4 + Int(c3 / 64) 
			Else 
				w3 = -1
			End If
			If Len(strIn) >= n + 2 Then 
				w4 = c3 And 63 
			Else 
				w4 = -1
			End If
			strOut = strOut + mimeencode(w1) + mimeencode(w2) + _
					  mimeencode(w3) + mimeencode(w4)
		Next
		EncodeStr = strOut
	End Function

	Private Function mimedecode(byVal strIn)
		If Len(strIn) = 0 Then 
			mimedecode = -1 : Exit Function
		Else
			mimedecode = InStr(Base64Chars, strIn) - 1
		End If
	End Function

	Public Function DecodeStr(byVal strIn)
		Dim w1, w2, w3, w4, n, strOut
		For n = 1 To Len(strIn) Step 4
			w1 = mimedecode(Mid(strIn, n, 1))
			w2 = mimedecode(Mid(strIn, n + 1, 1))
			w3 = mimedecode(Mid(strIn, n + 2, 1))
			w4 = mimedecode(Mid(strIn, n + 3, 1))
			If w2 >= 0 Then _
				strOut = strOut + _
					Chr(((w1 * 4 + Int(w2 / 16)) And 255))
			If w3 >= 0 Then _
				strOut = strOut + _
					Chr(((w2 * 16 + Int(w3 / 4)) And 255))
			If w4 >= 0 Then _
				strOut = strOut + _
					Chr(((w3 * 64 + w4) And 255))
		Next
		DecodeStr = strOut
	End Function


	Private Function mimeencode(byVal intIn)
		If intIn >= 0 Then 
			mimeencode = Mid(Base64Chars, intIn + 1, 1) 
		Else 
			mimeencode = ""
		End If
	End Function
	
	
	texto = "password"
	texto = EncodeStr(texto)
	response.Write(texto)
	
	response.Write("<br><br>")
	
	texto = "cGFzc3dvcmQ"
	texto = DecodeStr(texto)
	response.Write(texto)
%>
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.

Etiquetas: asp, faq
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 28 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 20:26.