- ベストアンサー
JScriptでDBへの接続方法について
- JScriptを使用してDBへの接続方法を教えて下さい。
- 接続がうまくいかない理由を教えてください。
- どなたかご教授下さい。お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
サーバ側のスクリプトとクライアント側のスクリプトがごっちゃになってませんか? 名前ボタンのイベントで指定している btn_onclick2 関数は、サーバ側の関数なので呼べません。 名前ボタンを押したら、エクセルの"sheet2"のレコードを取ってきて、テキストエリアに表示としたいのでしょうか? ならば、以下のようにすればどうでしょう。 <% function btn_onclick2() { var conn = Server.CreateObject("ADODB.Connection"); var rs = Server.CreateObject("ADODB.Recordset"); conn.ConnectionString = "DRIVER={Microsoft Excel Driver (*.xls)}; DBQ=" + Server.Mappath("tes.xls"); conn.Open; sSQL = "SELECT * FROM [sheet2$]"; rs.Open(sSQL, conn) var str = "名前\n"; while (!rs.EOF) { str += rs.Fields('name') + "\n"; rs.MoveNext(); } Response.Write(str); rs.Close; conn.Close; } %> </head> <body> <div class="base"> <form name="frm" method="post" action="#"> <table> <tr class="tdb"><td colspan="2"><input type="submit" value="名前" name="S1"></td></tr> <td colspan="2"><textarea name="txt" rows="10" cols="60" ID="Textarea1"><% if (Request.Form.Count > 0) btn_onclick2(); %></textarea></td> </table> </form> </div>
その他の回答 (1)
- Gimli
- ベストアンサー率47% (9/19)
こんな感じでどうでしょう? var conn = Server.CreateObject("ADODB.Connection"); var rs = Server.CreateObject("ADODB.Recordset"); conn.ConnectionString = "DRIVER={Microsoft Excel Driver (*.xls)}; DBQ=" + Server.Mappath("tes.xls"); conn.Open; sSQL = "SELECT * FROM [sheet2$]"; rs.Open(sSQL, conn);
補足
ご教授ありがとうございます。助かります。 上記記述を使用し、下記のように作成したのですがエラーが起こってしまいました。 <% function btn_onclick2() { var conn = Server.CreateObject("ADODB.Connection"); var rs = Server.CreateObject("ADODB.Recordset"); conn.ConnectionString = "DRIVER={Microsoft Excel Driver(*.xls)};DBQ=" + Server.Mappath("tes.xls"); conn.Open; sSQL = "SELECT * FROM [sheet2$]"; rs.Open(sSQL,conn) var str = "名前\n"; while (!rs.EOF) { str += rs.Fields('name') + "\n"; rs.MoveNext(); } document.frm.txt.value = str; rs.Close; conn.Close; } %> </head> <body> <div class="base"> <form name="frm" method="post" action="tes2.asp"> <table> <tr class="tdb"><td colspan="2"><input type="submit" value="名前" onclick="btn_onclick2()"></td></tr> <td colspan="2"><textarea name="txt" rows="10" cols="60" ID="Textarea1"></textarea></td> </table> </form> </div> 長文なってすみませんが、このような使用はできないのでしょうか? お忙しいところ申し訳ありませんが、ご教授下さい。 環境は、windows xp sp2 IISを使用しています。
お礼
ご教授ありがとうございます。 表示することができました。 今後は、書き込み・削除・検索の勉強をしていこうと思っています。 クライアント側で試しに作ってみて、 サーバ側にもっていくやりかたをしていたもので、 自分でも混乱していました。 ASPでのJScriptの使用を解説しているものが少ないので、 非常に助かりました。 また、宜しくお願い致します。 忙しいところ、早急に回答していだだき ありがとうございました。