WHERE文の中で、MYSQLにINSERTが出来ない。
メールを指定した時間に送信しようとしています。
手順はMYSQLに送信したい時間とメールの色々を入れて、
CRONで現在時間を調べて、合致したものを送信する。
このような手順で実現しようとしていますが、
最初でつまずいています。
送信先メールアドレスを while で抽出しながら MYSQLへインサートするつもりですが
一度しかインサートしてくれません。
インサートのsqlを[print $sql;]で、表示したものをphpMyAdminで SQL を実行すると
キチンと挿入できます。
**3回分まとめてSQL を実行してもうまく挿入できます。
前のページから送ったものは全て[print] で、思い通りの結果が表示します。
どなたか、ご教授お願いいたします。
$sql = "select count(*) as cnt from customer WHERE customerID IN (1,2,3,5,8)";
$rst = mysql_query($sql, $con);
$col = mysql_fetch_array($rst);
$tcnt = $col["cnt"];
mysql_free_result($rst);
print $tcnt."通送信<br />";
$subject ="これはPOSTで送りました";
$honbun ="これはPOSTで送りました";
$from = '送信元メールアドレス';
$jikan = "これはPOSTで送りました";
$sql ="select * from customer WHERE customerID IN (1,2,3,5,8)";
$rst = mysql_query($sql, $con);
while($col = mysql_fetch_array($rst)) {
$customerID= $col['customerID'];
$name = $col['name'];
$mail = $col['mail'];
i++
$sql = "INSERT INTO mail_queue_timer (timermailID,customerID, jikan ,sender , recipient ,headers, body ) VALUES
($timermailID, $customerID,$jikan , \"$from\" , \"$mail\" ,\"$subject\" , \"$honbun\" ) ";
$rst = mysql_query($sql, $con);
}
お礼
回答ありがとうございます。 >insert into テーブルA >select 名前 from テーブルB where 名前=xxx and 反映日=curdate() をそのまま実行したらできました。 本当にありがとうございます。 ちなみにデータ型は 名前:varcher 反映日:date でした。 また何かありましたらよろしくお願いします(_ _)