[PHP-users 32090] Re: phpで execute を関数化

Takashi Mikami mikami @ cx.117.cx
2007年 5月 10日 (木) 00:08:02 JST


ああ、すいません。メールの遅延でした。

> こんばんわ。初めて投稿します、三上と申します。
> 
> ibase_execute()に渡すパラメータは、配列じゃだめなんじゃないでしょうか。
> ibase_execute($stmt, $user_id, $passwd);
> かと思います。
> 
> # 普段PEARなんで、よく知らないですが。
> 
>> こんにちは、有田と申します。
>>
>> 現在、prepareとexecuteを関数化しようと思っていますが
>> うまくできません。
>>
>> やりたい事は、SQL文とパラメータを関数に渡して結果を取得したいだけです。
>>
>> 以下のコードだと、実行時にexecuteのパラメタが足りないというような
>> ワーニングが出るのですが、どのようにして、パラメータをセットすれば
>> よいのでしょうか?
>>
>> 以下、ソースを載せますのでよろしくお願い致します。
>>
>> -関数-
>> function db_execute($con, $sql, $params){
>>   $stmt = ibase_prepare($con, $sql);
>>   $rset = ibase_execute($stmt, $params);
>>   return ibase_fetch_object($rset);
>> }
>>
>> -実行元-
>> $user_id = 1;
>> $passwd  = 'ABCDEFG';
>> $params  = array($user_id, $passwd);
>> $sql = "SELECT NAME_DISP, "
>>      .        "MAILADDRESS "
>>      .   "FROM MS_MEMBER "
>>      .  "WHERE USER_ID =  ? AND "
>>      .       " PASSWD  =  ?";
>> $row = db_execute($con, $sql, $params);
>> echo $row->NAME_DISP;
>>
>> -メッセージ-
>> Warning: ibase_execute() [function.ibase-execute]: Statement expects 2 arguments
>>
>> 環境は、以下の通りです。
>> OS:WindowsXpPro
>> DB:Firebird1.5
>> php5
>> Apache2
>>
>> 以上、よろしくお願い致します。
>> _______________________________________________
>> PHP-users mailing list  PHP-users @ php.gr.jp
>> http://ml.php.gr.jp/mailman/listinfo/php-users
>> PHP初心者のためのページ - 質問する前にはこちらをお読みください
>> http://www.php.gr.jp/php/novice.php3
>>
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
> 
> 


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