プロが教えるわが家の防犯対策術!

下記のASPソースコードをPHPソースコードに書き換えようとしています。

<%
Set ObjConn = Server.CreateObject("ADODB.Connection")

ObjConn.Open "database_1"

Set ObjRS = Server.CreateObject("ADODB.Recordset")

ObjRS.Open "food", ObjConn, 3, 3

ObjRS.Filter = "jewelry_0_ID=" & Request.QueryString("No")

If ObjRS.EOF Then
Response.Write("選択された名称の区分はありません。<br><hr>")
Response.Write("<a href=""index.html"">区分選択に戻る</a>")
Response.End
End If

Do While Not ObjRS.EOF
Response.Write("<tr><td>")
Response.Write(ObjRS.Fields("名称").Value)
Response.Write("</td><td>")
ObjRS.MoveNext
Loop

ObjRS.Close

ObjConn.Close
%>

PHPに不慣れであるため、このうち、

Set ObjRS = Server.CreateObject("ADODB.Recordset")

ObjRS.Open "jewelry", ObjConn, 3, 3

ObjRS.Filter = "jewelry_0_ID=" & Request.QueryString("No")

と、

ObjRS.Close

をどのようにすればよいか、分かりません。PHPには、レコードセットを開くという概念はないのでしょうか?下記URIには、見当たりません。

http://php.plus-server.net/ref.uodbc.html

A 回答 (1件)

phpでは、まずsql文の発行が必要で、レコードを返すSQL文においてはレコードセットをfetchするという形式になります。


connect したら、odbc_execまたは、 odbc_prepare → odbc_execute でsql文を発行、
その後、odbc_fetch_arrayやodbc_fetch_object で一行ずつ取り出します。
htmlのtableタグ形式で全行出力するならodbc_result_all
拡張子phpになってるマニュアルの方が、user noteにいろいろ例文があります。
http://jp.php.net/manual/ja/function.odbc-execut …
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。早速、試してみます。

お礼日時:2011/05/02 19:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!