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

ayuda muy urgente con variable

Estas en el tema de ayuda muy urgente con variable en el foro de ASP Clásico en Foros del Web. Estoy trabajando con dos variables de session : session ("variable") = regUsername Session("nombre") =variable Una rescata el nombre del usuario la otra rescata el nombre ...
  #1 (permalink)  
Antiguo 07/11/2004, 13:35
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
ayuda muy urgente con variable

Estoy trabajando con dos variables de session :
session ("variable") = regUsername
Session("nombre") =variable

Una rescata el nombre del usuario la otra rescata el nombre de un producto que en realidad es un numero .

uan vez que tengo la variable la trabajo a nivel local asi :

Dim sNombre

sNombre=Session("Nombre")

Luego esta variable la imprimo y me sale el valor correctamente , el tema surge cuando quiero insertar esta variable a una base de datos , no me la ingresa es decir no me toma ningun valor en la base de datos , les muestro el codigo completo para que me digan por favor donde esta el error, que hago mal ???

<%Response.Buffer = true
session ("variable") = regUsername
Session("nombre") =variable

Dim sNombre

sNombre=Session("Nombre")

%>



<%

dim cnn,rst
' Creamos la conexión a la base de datos sin DSN
set cnn = Server.CreateObject("ADODB.Connection")
set rst = Server.CreateObject("ADODB.RecordSet")
cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
Server.MapPath("base.mdb"))
sqltext = "SELECT * FROM preguntas"
sql="select max(id) from preguntas"

rst.Open sqltext,cnn,3,3

'Recogemos los datos y valido el campo pregunta

usuario="variable"
ProductoID="sNombre"
Pregunta=Request.Form("pregunta")


if pregunta = "" then
error = "Debe completar todos los datos."
Response.Write error


Response.End
end if

'Si está todo correcto, procedemos a ingresar los datos a la base de datos

rst.AddNew
rst("usuario")= Categoria / aca lo mismo en blanco /
rst("producto_id") =sNombre / aca nada en blanco /
rst("pregunta") = pregunta / esto me lo toma ok viene de un formulario/


rst.update

'Terminamos e imprimimos un mensaje
Response.Write "su pregunta fue ingresada satifactoriamente"
%>

Última edición por hugorei; 07/11/2004 a las 13:56
  #2 (permalink)  
Antiguo 07/11/2004, 13:47
Avatar de tork  
Fecha de Ingreso: noviembre-2003
Ubicación: Veracruz
Mensajes: 153
Antigüedad: 21 años, 6 meses
Puntos: 0
Te recomenadría que mejor usaras:

Cn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" + Server.MapPath("database.mdb"));

Ya que de esta forma hay menos errores, claro que para hacer esto, tendrás que actualizar todo el código...
__________________
... www.kaomix.com ... :aplauso:
kao0 power
  #3 (permalink)  
Antiguo 07/11/2004, 13:54
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Perdon pero aca no hay un problema con la base de datos ya que mi conexion con la base esta bien si pasa una variable deberian pasar las otras
  #4 (permalink)  
Antiguo 07/11/2004, 14:19
Avatar de tork  
Fecha de Ingreso: noviembre-2003
Ubicación: Veracruz
Mensajes: 153
Antigüedad: 21 años, 6 meses
Puntos: 0
A pues, entonces no sé cual sea el problema...sorry!
__________________
... www.kaomix.com ... :aplauso:
kao0 power
  #5 (permalink)  
Antiguo 07/11/2004, 14:35
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
alguien mas puede ayudarme por favor ??????????
  #6 (permalink)  
Antiguo 07/11/2004, 15:06
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
no se si sea por esto pero tienes un espacio donde te puse de color rojo, depronto es por esto qeu no te funciona.. intenta sin el espacio y nos dices a ver que pasa..

otra cosa que te recomiendo que uses es option explicit asi sabras si hay variables mal definidas o repetidas o algo asi..



<%Response.Buffer = true
session ("variable") = regUsername ' asi: session("variable")
Session("nombre") =variable

Dim sNombre

sNombre=Session("Nombre")

%>



<%

dim cnn,rst
' Creamos la conexión a la base de datos sin DSN
set cnn = Server.CreateObject("ADODB.Connection")
set rst = Server.CreateObject("ADODB.RecordSet")
cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
Server.MapPath("base.mdb"))
sqltext = "SELECT * FROM preguntas"
sql="select max(id) from preguntas"

rst.Open sqltext,cnn,3,3

'Recogemos los datos y valido el campo pregunta

' no se estas asignaciones porqqeu las haces con comillas, no deberian estar 'en comillas porque las toma como si fueran cadenas no variables

usuario="variable"
ProductoID="sNombre"
Pregunta=Request.Form("pregunta")


if pregunta = "" then
error = "Debe completar todos los datos."
Response.Write error


Response.End
end if

'Si está todo correcto, procedemos a ingresar los datos a la base de datos

rst.AddNew
rst("usuario")= Categoria ' aca lo mismo en blanco /
rst("producto_id") =sNombre ' aca nada en blanco /
rst("pregunta") = pregunta 'esto me lo toma ok viene de un formulario/


rst.update

'Terminamos e imprimimos un mensaje
Response.Write "su pregunta fue ingresada satifactoriamente"
%>
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #7 (permalink)  
Antiguo 07/11/2004, 15:31
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
ya lo sulucione Lexua gracias de todas formas mi error era que estaba recuperando mal el valor de la variable de session , gracias amigo de todos modos por tomarte la molestia de contestarme
  #8 (permalink)  
Antiguo 07/11/2004, 17:31
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 4 meses
Puntos: 4
ok, suerte.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
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




La zona horaria es GMT -6. Ahora son las 11:41.