'sample_id'、 'order_id'、order_email_id '、' review_request '、' coupon_sent 'というフィールドを持つ' sample 'というテーブルがあります。MagentoデータベーステーブルをWHERE句で更新する
$to_date = date('Y-m-d H:i:s',strtotime('-1 days'));
$orders = Mage::getModel('sales/order')->getCollection()->addFieldToFilter('status', 'complete')->addFieldToFilter('updated_at',array('to' => $to_date))->addAttributeToSelect('customer_email')->addAttributeToSelect('entity_id');
foreach ($orders as $order)
{
$email = $order->getCustomerEmail();
$id = $order->getEntityId();
//echo 'Email: ' . $email . ' Id: ' .$id .'<br/>' ;
$sample = Mage::getModel('sample/sample');
$sample->setOrderId($id);
$sample->setOrderEmailId($email);
$sample->save();
echo '<br/>Record Added';
}
$posts = Mage::getModel('sample/sample')->getCollection();
foreach($posts as $sample_post)
{
if($sample_post->getReviewRequest()==0)
{
code to send email to email id's from this table's order_email_id field
try
{
(if($mail->send() == true)
{
echo "<br> Mail Sent ";
//**WHERE clause condition to update 'review_request' field for all successful emails sent**
}
else {echo 'Mail not Sent';}
}
catch(Exception e) {}
は、だから私のコードにACCどのように私は、電子メールが正常に送信されたすべてのレコードに対してreview_request = 1に設定WHERE句を入れてください。事前に
おかげで
Downvoted [フィルタリングコレクション]に何の研究を示していないために(http://www.magentocommerce.com/知識ベース/エントリ/ magento-for-dev-part-8-varien-data-collections)。 – clockworkgeek
申し訳ありませんが、私はその記事に入り、いくつかの可能性を試してみましたが、成功しなかったことを正直に思います。それゆえ、確かに知っている人と二重チェックすることを考えました。あなたのリンクに基づいていくつかのオプションをもう一度試してみます。ありがとうございました。 – ivn
ちょうど私の問題の解決策を考え出しました。そのリンクをもう一度持ってきて、解決策を見つけ出すために私を「探検」してくれた、私をdownvotingするための@clockworkgeekに感謝します。 :P私は8時間まで私のソリューションを投稿することはできませんが、できるだけ早くそれを行うでしょう。ありがとうございました – ivn