[PHP-users 27953] ループ処理

kimura@kmtec.co.jp kimura @ kmtec.co.jp
2005年 12月 29日 (木) 13:53:50 JST


こんにちは、下記のプログラムで
データーべースから抜き出したデータをリストボックスに
表示させたいのですが、ループの部分でうまくいきません。
mysql_fetch_array( $rec, MYSQL_ASSOC )の部分が悪いのだと思うのですが、
ヒントを頂ければ幸いです。

<?php
include("sql.inc");
$obj2 = new SQL_class ( );
 //SQL発行
 $sql = "select accessid from adver" ;
 $sql .= " where accessuser=''";
 $rec = $obj2 -> db_sql($sql);

 //SQL実行
 $rec = $obj2 -> db_sql_more($sql);
echo '<FORM><SELECT size="3" name="sentakuid">';
//1件ずつ取り出すループ
while( $res = mysql_fetch_array( $rec, MYSQL_ASSOC ) ){
 echo '<OPTION value="' .$res['ccessid']. '">' .$res['ccessid'].
'</OPTION>';
}
echo '</SELECT></FORM>';
?>

sql.inc
<?php
class SQL_class {
    var $userid;
    var $password;
    var $ok;

//データ抽出用
    function db_sql($sql) {
     if( ! $conn = mysql_connect( 'localhost', 'root', '') ){
 echo "データベースに問題が発生しています。<br>\n";
 echo '<A HREF=barkitiran.php target="main">戻る</a>';//トップに戻る
     }else{
 //データベースの選択
 mysql_select_db( 'adveracc', $conn );
 $rs = mysql_query( $sql, $conn );
 $rec = mysql_fetch_array( $rs, MYSQL_ASSOC ) ;
 //切断
 mysql_close($conn);

 return $rec;
     }
    }



PHP-users メーリングリストの案内