• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数のRSSのタイトル等をPDOでMySQLに登録)

複数のRSSをPDOでMySQLに登録する方法

このQ&Aのポイント
  • PHP 5.1.6とMySQL 5.0.77を使用して、複数のRSSを読み込み、RSS記事のタイトルとURLをMySQLに登録する方法を教えてください。
  • 既にRSSの記事を表示することには成功しており、35個の記事リストが表示されています。しかし、DBに登録する処理を追加すると、1個目のRSS記事20個が正常に登録されますが、21個目以降はエラーが発生してしまいます。
  • 具体的なプログラムの中で問題が発生している箇所は、「ループの中でPDOを使ったデータ登録」の部分です。可能な解決策や改善点について教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • duron
  • ベストアンサー率77% (73/94)
回答No.2

$dbhは$dbh2と分けていますが $stmtはループ内でも同名で使用してるので上書きされ 2回目のwhile($result=$stmt->fetch(PDO::FETCH_ASSOC)) でおかしいことになっているのではないでしょうか

hpmt28
質問者

お礼

duronさん 回答ありがとうございます。 ご指摘の通り $stmtを$stmt2と修正したところプログラムがうまく動きました。 最近PDOを使い始めたのでまだ書式に慣れていなく $stmt=$dbh2->prepare($query2); で1個目の接続と別の接続を作ったつもりになってしまっていました。 何日間か苦戦しましたが、これでやっと前に進めそうです。 ありがとうございました。

その他の回答 (1)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

prepareとbindParamはあるのですが、executeはどこにあるのでしょうか?

hpmt28
質問者

補足

ご指摘ありがとうございます。 bindParamの下に$stmt->execute();が必要ですね。 質問用にソースを作った時に抜けてしまいました。

関連するQ&A