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

質問があるのですが、よろしくお願いします。

use DBI;
$dbuser = 'root';
$passwd = 'abc';
$db = DBI->connect('DBI:mysql:DB:localhost',$dbuser, $passwd);

$prepare = "select MAIL from user where USER_ID = $userid";
$sth->prepare("$prepare");
$sth->execute;
@user = $sth->fetchrow_array;
$sth->finish;


while( ($key, $value) = each %in ){
$sth = $db->prepare("UPDATE user SET $key = '$value' where USER_ID = $in{userid}");
$sth->execute;
$sth->finish;
}
$db->disconnect;

という処理を行わせたいのですが、どうもUPDATE文の辺りで、処理が止まってしまっているようなのです。select文はしっかり実行されている形跡があるのですが、1回の処理で2回以上データベースに対してアクセスすることは出来ないのでしょうか?

どなたか分かる方いらっしゃいましたらご教授のほどよろしくお願いします。

A 回答 (1件)

$prepare = "select MAIL from user where USER_ID = $userid";


$sth->prepare("$prepare");

これを↓

$prepare = "select MAIL from user where USER_ID = $userid";
$sth = $db->prepare("$prepare");

としてもだめですかね?
    • good
    • 0
この回答へのお礼

ありがとうございます、ただのポカミスだったようですm(__)m

お礼日時:2006/08/14 15:28

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