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

acceso a MySQL con vbScript en ASP

Estas en el tema de acceso a MySQL con vbScript en ASP en el foro de ASP Clásico en Foros del Web. Que tal buena tarde primero mas que nada saludos soy nuevo en la comuidad y queria ver quien me podria ayudar se los agradeceria mucho ...
  #1 (permalink)  
Antiguo 19/11/2009, 10:50
 
Fecha de Ingreso: noviembre-2009
Mensajes: 12
Antigüedad: 15 años, 5 meses
Puntos: 0
acceso a MySQL con vbScript en ASP

Que tal buena tarde primero mas que nada saludos soy nuevo en la comuidad y queria ver quien me podria ayudar se los agradeceria mucho

************************************************** ***********************************************

TENGO UNA BASE DE DATOS CON MySQL DONDE ME CONECTO CON LA FUNCION: oConex Session(nom_dba"),EJECUTO UN QUERY PARA EXTRAER cuenta y nombre, ME DESPLIEGA LA CUENTA PERO EL NOMBRE ME SALE EL SIGUIENTE ERROR: Expected end of statement

No entiendo porque el campo rs(0) que es VARCHAR en MySql si lo muestra, el otro campo rs(1) que tambien es VARCHAR me sale el error antes mencionado (Expected end of statement)


rs(0)="100-000-000" *******************Este si lo muestra
rs(1)="JUAN PEREZ SANCHEZ" ************Este sale el error

Estoy usando VBscript segun funcion anexa.

<!--#include file="./db_utils.asp"-->

<SCRIPT TYPE="text/vbscript" LANGUAGE="VBScript">
<!--

<%
oConex Session("nom_dba")
ret=sql_send("SELECT cuenta, nombre FROM cont01 ORDER BY cuenta")
%>

nCTAS = <%=nrows%>
Parent.Frames("right1").Document.Forms("cuentas"). Item("catalogo").Length = nCTAS
nREGS=0
nXXX=0
<%Do Until rs.Eof%>
If nXXX<5 Then
MsgBox "<%=rs(0)%> : <%=rs(1)%>"
End If
nXXX = nXXX + 1
sCTA = "<%=rs(0)%> : ERROR EN CAMPO-NOMBRE CTA"
Parent.Frames("right1").Document.Forms("cuentas"). Item("catalogo").Options(nREGS).Text=sCTA
nREGS=nREGS+1
<%
rs.MoveNext
Loop%>

-->
</SCRIPT>
  #2 (permalink)  
Antiguo 20/11/2009, 05:28
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: acceso a MySQL con vbScript en ASP

Hola y bienvenido

Lo que te está diciendo es que se esperaba un final de instrucción en la línea que te marca. Por otro lado, ¿donde tienes instanciado el objeto rs?

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 20/11/2009, 09:10
 
Fecha de Ingreso: julio-2009
Mensajes: 11
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: acceso a MySQL con vbScript en ASP

Hola... bienvenido, cada días nos sumamos más a este gran foro, no?

Yo me estoy recién iniciando con las conexiones a MySQL desde ASP, y no he tenido ningún problema, te voy a enviar mi cadena de conexión (de ejemplo) y cómo recorro los campos.

Conexión:
Código asp:
Ver original
  1. Set Conn = server.CreateObject("ADODB.Connection")
  2.  
  3. mvarConn_String = "Driver={MySQL ODBC 5.1 Driver}; Server=localhost; Database=Prueba; User=root; Password=; Option=3;"
  4. Conn.Open mvarConn_String

Recordset y recorrido:
Código asp:
Ver original
  1. Set RS = Server.CreateObject("ADODB.RecordSet")
  2. SQL = "Select * from Categorias_Todos"
  3. RS.Open SQL, Conn
  4. while Not RS.EOF
  5.     response.write RS("Cat_Id") & "<br/>"
  6.     response.write RS("Cat_Nombre") & "<br/>"
  7.     RS.MoveNext
  8. Wend
  9. RS.Close
  10. Set RS = Nothing

Es todo exactamente igual como puedes ver, sólo cambia la cadena de conexión. Debes bajar una aplicación para que se pueda conectar mediante ADO.

Última edición por pbarros; 20/11/2009 a las 09:24 Razón: Usar el Resaltador!!!
  #4 (permalink)  
Antiguo 20/11/2009, 11:48
 
Fecha de Ingreso: noviembre-2009
Mensajes: 12
Antigüedad: 15 años, 5 meses
Puntos: 0
Busqueda Respuesta: acceso a MySQL con vbScript en ASP

Cita:
Iniciado por pbarros Ver Mensaje
Hola... bienvenido, cada días nos sumamos más a este gran foro, no?

Yo me estoy recién iniciando con las conexiones a MySQL desde ASP, y no he tenido ningún problema, te voy a enviar mi cadena de conexión (de ejemplo) y cómo recorro los campos.

Conexión:
Código asp:
Ver original
  1. Set Conn = server.CreateObject("ADODB.Connection")
  2.  
  3. mvarConn_String = "Driver={MySQL ODBC 5.1 Driver}; Server=localhost; Database=Prueba; User=root; Password=; Option=3;"
  4. Conn.Open mvarConn_String

Recordset y recorrido:
Código asp:
Ver original
  1. Set RS = Server.CreateObject("ADODB.RecordSet")
  2. SQL = "Select * from Categorias_Todos"
  3. RS.Open SQL, Conn
  4. while Not RS.EOF
  5.     response.write RS("Cat_Id") & "<br/>"
  6.     response.write RS("Cat_Nombre") & "<br/>"
  7.     RS.MoveNext
  8. Wend
  9. RS.Close
  10. Set RS = Nothing

Es todo exactamente igual como puedes ver, sólo cambia la cadena de conexión. Debes bajar una aplicación para que se pueda conectar mediante ADO.


De ante mano gracias por sus comentarios pero, no resuelve mi pregunta. Siento que este es un "BUG" de ASP.

el objeto recordset (rs) y la conexion a la base de datos estan definidos en una sub rutina mencionada anteriormente llamada (oConex "base de datos"), todo esto incluye las instrucciones antes mencionadas.

El problema es que dentro de una pagina ASP tengo codigo VBScript en el cual quiero pasar el valor de una variable de ASP a VBScipt.

EJ.

< SCRIPT TYPE="text/vbscript" language=VBScript"

<!--

<%
*** aqui genero la conexion a la BD y el RS
ejecuto el siguente query: "select campo1, campo2 from tabla"
%>

<% du until rs.eof%>

msgbox "<%=rs("campo1")%>" 'campo sin espacios OK
msgbox "<%=rs("campo2")%>" 'campo con espacios ERROR

<%rs.movenext
loop%>
-->
</script>

NOTA: si el campo1 no contiene espacios en blanco esta ok, si el campo2 es extraido y contiene espacios en blanco como un nombre, sale el ERROR: unexpected end of statement.

hay que recordar que estoy pasando una variable de ASP <%variable%> a una variable dentro de vbscript.

espero que Dios los ilumine por que ya le busque de diferentes maneras, de antemano gracias por sus comentarios
  #5 (permalink)  
Antiguo 20/11/2009, 12:07
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Respuesta: acceso a MySQL con vbScript en ASP

¿El ERROR: unexpected end of statement te lo da IIS o te lo da IE? Me refiero a si es un error de ASP o de VBScript cliente.

Por otro lado, intentá hacer un <%=replace(rs("campo2"), " ", "_")%> a ver qué ocurre.
__________________
...___...
  #6 (permalink)  
Antiguo 20/11/2009, 12:25
 
Fecha de Ingreso: noviembre-2009
Mensajes: 12
Antigüedad: 15 años, 5 meses
Puntos: 0
Busqueda Respuesta: acceso a MySQL con vbScript en ASP

Cita:
Iniciado por AlZuwaga Ver Mensaje
¿El ERROR: unexpected end of statement te lo da IIS o te lo da IE? Me refiero a si es un error de ASP o de VBScript cliente.

Por otro lado, intentá hacer un <%=replace(rs("campo2"), " ", "_")%> a ver qué ocurre.

creo que es un error de IIS vbscript cliente, tu solucion ya la hice pero tampoco resulta cuando viene de un campo de bd, siento que debe ser alguna configuracion del juego de caracteres de la bd.

la solucion que me das si funciona con variables alfanumericas en memoria pero no resulta con datos extraidos de una bd.

gracias por tu respuesta y espero seguir buscando la solucion.

Se me estan cayendo las pelotas no se que hacer
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 17:50.