|
Dernière réponse | |
---|---|
Sujet : petit pb de connexion a une BD avec ASP | |
Mammam | Heu Lamatrice ->... dans le conn.open... vô mieux repréciser ke tu veux bien une DSN... et le ';' est obligatoire mais seulement kan tu veux préciser un mot de passe et un login à ta base !
Cela ne dérange en rien si tu mets "cnx.Open "DSN=technical memory;uid=login;pwd=password;"... sachant ke login et password ne sont même pas déclarées... |
Aperçu |
---|
Vue Rapide de la discussion |
---|
Mammam | Heu Lamatrice ->... dans le conn.open... vô mieux repréciser ke tu veux bien une DSN... et le ';' est obligatoire mais seulement kan tu veux préciser un mot de passe et un login à ta base !
Cela ne dérange en rien si tu mets "cnx.Open "DSN=technical memory;uid=login;pwd=password;"... sachant ke login et password ne sont même pas déclarées... |
lamatrice | --------------------
var conmemory = server.createobject("adodb.connection" ); conmemory.open ("dsn=memory" );%> var rsAffaires = con.Execute ("AFFAIRES" );%> ------------------- déjà y a un prob dans ton con.Execute ça devrais être un truc genre Set rsAffaires = conmemory.execute "memory"; et puis les majustcule dans adodb, je crois que c'est important donc ça nous fait en asp (un copier coller): <% Set Conn=Server.CreateObject("ADODB.Connection" ) Conn.Open "memory"%> pas dsn= ni de ; dans les guiellemet. monsql= "select * from affaires;" Set rs=conn.Execute(monsql)%> <%rs.MoveFirst do while not rs.EOF%> <%=rs("Client" )%> .. ..... ... <%Set rs=nothing conn.Close set conn=nothing %> |
hebe | sinon, g essayé de tt mettre en javascript,
j'obtient comme erreur: " server is undefined " a la ligne 10... quellle est la méthode en jscript? <HTML> <HEAD> <TITLE> essais sur le dynamisme</TITLE> </HEAD> <BODY bgcolor="#51A6DD"> <P> <B> <FONT size="5">RECHERCHE DE L'INFORMATION :</FONT></B></P> <%@Language="JavaScript"%> <% var conmemory = server.createobject("adodb.connection" ); conmemory.open ("dsn=memory" );%> <% var rsAffaires = con.Execute ("AFFAIRES" );%> <FORM name="num_affaires" methode="poste"> <SELECT name="num" size="1"> <% rs.MoveFirst; while (!(rs.EOF))%> <OPTION value='<%=rs("Client" )%>'> <%=rs("Client" )%> </OPTION> <% rs.MoveNext; loop;%> <% rsAffaires.close; var rsAffaires=nothing; conmemory.close; %> </FORM> </BODY> </HTML> Merci |
hebe | oups!!! desolé, j'ai vu l'enormité de ce que j'ai ecrit...
j'ai corrigé la version du dessus, mais maintenant, j'ai tjrs la meme erreur qu'avant... cad : "General error Unable to open registry key 'Driverld' " cela ne doit pas venir de mon code, mais peut être de mon installation de IIS 4.0??!!! non?? |
hebe | sous la directive de vos judicieux conseils, j'ai changé le nom de ma DSN...
Malheureusement, je me retrouve avec une nouvelle erreur. il est maintenant ecrit: "object required : 'con'" a la ligne 10 Voici ce que j'ai... <HTML> <HEAD> <TITLE> essais sur le dynamisme</TITLE> </HEAD> <BODY bgcolor="#51A6DD"> <P> <B> <FONT size="5">RECHERCHE DE L'INFORMATION :</FONT></B></P> <% set contechnical_memory = server.createobject("adodb.connection" ) con.open ("dsn=memory" )%> <% Set rsAffaires = con.Execute ("AFFAIRES" )%> <FORM name="num_affaires" methode="poste"> <SELECT name="num" size="1"> <% rs.MoveFirst do while not rs.EOF%> <OPTION value='<%=rs("Client" )%>'> <%=rs("Client" )%> </OPTION> <% rs.MoveNext loop%> <% rsAffaires.close Set rsAffaires=nothing con.close %> </FORM> </BODY> </HTML> si vous savez d'ou cela peut venir?? MERCI!!! |
Mammam | Kan je dis "deux", c'est ton nom de la base ki est composé de deux mots : technical et memory... essaye ke technical ou memory... un mot sans underscore parce ke apparemment, il aime pas... Pour les drivers ODBC, si dans DSN Utilisateurs tu as l'extension du fichier kil te fô, alors kan tu vas créer ta DSN dans DSN System, ça marchera impecc... |
hebe | en mettant l'underscore, cette erreur a disparrut, mais malheureusement pour faire place a une nouvelle:
"General error Unable to open registry key 'Driverld' pour ce qui est de la dns, pas de probleme, tt était fait comme il faut... |
lamatrice | je sais pas par où t'es passé pour déclarer le dns
mais sous win panneau de config/ source de donnée ODBC/ -dans onglet DNS system et tu choisi ton fichier de données (access, ou autre) tu lui donne un nom DNS que t'utilisera dans ton script -dans l'onglet DNS utilisateur il faut avoir le bon driver ODBC dans la liste. si t'utilise access ou mysql il faut que dans cette liste figure le driver adéquoit -aussi j'ai jamais vu de nom dns en plusieur mot : comme elle dit la maman : fait plutot technical_memory ou tehmemory ou ce que tu veux. |
hebe |
|
hebe |
|
Mammam | J'utilise tellement de recorset ke j'ai fait une sub...
Alors : dans page.asp <!--#include file="_fonctions.asp"--> <% ' Connexion à la bdd dim cnx set cnx = Server.CreateObject("ADODB.Connection" ) cnx.Open "DSN=technical memory;uid=login;pwd=password;" ' Création des curseurs et des requêtes dim rs sql = "select * from affaires" Curseur rs, sql, cnx %> Dans _fonctions.asp : <% Sub Curseur(rs, sql, cnx) set rs = server.CreateObject("ADODB.recordset" ) set rs.ActiveConnection = cnx rs.CursorType = 0 'adOpenForwardOnly rs.LockType = 1 'adLockReadOnly rs.Open sql, cnx, 3, 3 End Sub %> Au début, j'avais essayé de faire une requête avec un conn.execute()... ça marchait pas top (en fait, je crois ke j'avias la même erreur ke toi.. ??!). Après, j'ai fait la méthode de dessus, et ça marche impecc... T'es pas obligé de faire une fonction ou une sub... mais, si t'as pas mal de requetes à faire, c'est bien moins chiant comme ça... Sinon, essaye de mettre 'technical_memory' avec un underscore... ou alors un seul pour ta base et pas deux kom t'as toi... |
lamatrice | Conn.Open "DSN=technical memory;" ???? vbscript connait pas
mais la syntaxe : Conn.opent "technical memory" devrait êttre plus juste non ? enfin à tester. de plus, la déclaration du dns dans panneau de config, faut verifier que t'as bien le driver odbc de la base ? |
hebe | je ne sais pas d'où viens mon erreu sur ce qui suit :
<html> <head> <title>essais sur le dynamisme...</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body bgcolor="#51A6DD"> <p><b><font size="5">RECHERCHE DE L'INFORMATION :</font></b></p> <p>entrez le numéro de l'affaire : </p> <% dim Conn Set Conn=Server.CreateObject("ADODB.Connection" ) Conn.Open "DSN=technical memory;"%> <%Set rs=conn.Execute("SELECT * FROM AFFAIRES" )%> <form name="num_affaire" method="post"> <select name="num" size="1"> <% rs.MoveFirst do while not rs.EOF%> <option value="<%=rs("Client" )%>"> <%=rs("Client" )%></option> <%rs.MoveNext Loop %> </select> <% Set rs=nothing conn.Close set conn=nothing %> </form> </body> </html> sachant que j'ai bien un DSN du nom de "technical memory" fesant reference a une Base de Données du meme nom (cette BD se trouve dans le meme repertoire que mon fichier materiel_ce.asp qui contient le code ci-dessus l'erreur qui apparaît est la suivante: "Microsoft VBScript runtime error '80004005' [Microsoft][ODBC Driver Manager] Disk or network error /service/information/materiel_ce.asp, line10" MERCI pour votre aide! |