Problema de paso de parámetros de sesión
Categoría: Computadora/Red gt; Programación gt; Otros lenguajes de programación
Descripción del problema:
Estoy subiendo imágenes en el asp. página, desea guardar el nombre del archivo en la sesión, de la siguiente manera:
filename=formpathamp; minuto(ahora)amp; segundo(ahora)amp; fileExt
sesión("picdir")= nombre de archivo
En la página ASP guardada, inserte el valor de la sesión en el picurl. en la columna de la base de datos:
set rs=server.createobject("adodb.recordset")
sql="select * from artículo donde (id es nulo)"
rs.open sql, conn, 1, 3
rs.addnew
rs("picdir") = sesión("picdir")
rs.update
Pero no hay ningún valor en la base de datos.
¿Qué pasa?
Análisis:
Si está utilizando un host virtual para la sesión, se recomienda utilizar otros métodos. Porque se pierde inexplicablemente. Explicación de los motivos de la pérdida de sesión sin motivo:
Durante el proceso de desarrollo, la SESIÓN a menudo se pierde inexplicablemente, especialmente en el caso de IIS6. En resumen, pueden ocurrir las siguientes situaciones:
.1. El proceso se reinicia. La sesión de configuración predeterminada de Asp está dentro del proceso, por lo que la configuración para la sesión en el archivo Web.Config es la siguiente:
lt sessionState = 'InProc'; stateConnectionString=' tcpip=127.0.0.1:42424' sqlConnectionString='data source=127.0.0.1; Trusted_Connection=yes' cookieless='true' timeout='60'/gt;
Hay un modo de atributo en la etiqueta sessionState, puede tener tres valores: InProc, StateServer, SQLServer (distingue entre mayúsculas y minúsculas). El valor predeterminado es InProc, lo que significa que la sesión se guarda en el proceso (IIS5 es asp_wp.exe e IIS6 es W3wp.exe. Este proceso es inestable cuando ocurren ciertos eventos, el proceso se reiniciará, lo que causará problemas de almacenamiento). Se pierde la Sesión dentro del proceso.
¿En qué circunstancias se reiniciará el proceso? Un artículo de Microsoft nos dijo:
1. El atributo MemoryLimit de la etiqueta ProcessModel en el archivo de configuración
2. El archivo Global.asax o Web.config ha sido cambiado p>
3. Se modificó el programa web (DLL) en la carpeta Bin.
4. El software antivirus escaneó algunos archivos .config.
Si el autor aún no puede obtener el valor después de confirmar que el programa es correcto, ¡se recomienda utilizar COOKIES en su lugar!