• 17-02-2022, 16:32:03
    #1
    Merhaba arkadaşlar, Veritabanından doğum günü olan kullanıcıları 'DogumGunuOlanlar 'aliases ile listeledim ancak bu kullanıcılara mail gönderirken sorun yaşıyorum.
    Sql Kodu : $DogumSorgu=$db->GetRows("SELECT DATE_FORMAT(NOW(),'%e')=DATE_FORMAT(MemberBirthday ,'%e') AND DATE_FORMAT(NOW(),'%c')=DATE_FORMAT(MemberBirthday ,'%c') AS DogumGunuOlanlar,MemberID,MemberUsername,MemberNam e,MemberLastname,MemberEmail,MemberBirthday,Member Phone FROM members ORDER BY `DogumGunuOlanlar` DESC");




    foreach ($DogumSorgu as $Dogum) {
    if ($Dogum->DogumGunuOlanlar == 1) {
    $Birthday = $Dogum->MemberBirthday;
    $dateOne = DateTime::createFromFormat("Y-m-d", date("Y-m-d"));
    $dateTwo = DateTime::createFromFormat("Y-m-d", $Birthday);
    $interval = $dateOne->diff($dateTwo);
    $YasGunu = $interval->format('%Y');
    MailGonder("$Dogum->MemberEmail","$YasGunu.Yaş günün kutlu olsun $Dogum->MemberName $Dogum->MemberLastname, Nice mutlu senelere...");
    }
    }
    Php tarafında mail gidiyor ancak doğum günü olan bir kullanıcının mail adresine diğer kullanıcıların (doğum günü olanların) doğum günü mesajı gidiyor.
  • 17-02-2022, 16:37:43
    #2
    Web Tasarım ve Yazılım
    oguar adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar, Veritabanından doğum günü olan kullanıcıları 'DogumGunuOlanlar 'aliases ile listeledim ancak bu kullanıcılara mail gönderirken sorun yaşıyorum.
    Sql Kodu : $DogumSorgu=$db->GetRows("SELECT DATE_FORMAT(NOW(),'%e')=DATE_FORMAT(MemberBirthday ,'%e') AND DATE_FORMAT(NOW(),'%c')=DATE_FORMAT(MemberBirthday ,'%c') AS DogumGunuOlanlar,MemberID,MemberUsername,MemberNam e,MemberLastname,MemberEmail,MemberBirthday,Member Phone FROM members ORDER BY `DogumGunuOlanlar` DESC");




    foreach ($DogumSorgu as $Dogum) {
    if ($Dogum->DogumGunuOlanlar == 1) {
    $Birthday = $Dogum->MemberBirthday;
    $dateOne = DateTime::createFromFormat("Y-m-d", date("Y-m-d"));
    $dateTwo = DateTime::createFromFormat("Y-m-d", $Birthday);
    $interval = $dateOne->diff($dateTwo);
    $YasGunu = $interval->format('%Y');
    MailGonder("$Dogum->MemberEmail","$YasGunu.Yaş günün kutlu olsun $Dogum->MemberName $Dogum->MemberLastname, Nice mutlu senelere...");
    }
    }
    Php tarafında mail gidiyor ancak doğum günü olan bir kullanıcının mail adresine diğer kullanıcıların (doğum günü olanların) doğum günü mesajı gidiyor.
    Hocam CC olarak değilde BCC olarak ekleyin mailleri
  • 17-02-2022, 16:38:45
    #3
    Siz kontrol yaparken Doğum günü mü diye kontrol yapıyorsunuz o yüzden doğum günü olan herkese gidiyor gidiyor.
  • 17-02-2022, 17:00:42
    #4
    velmut adlı üyeden alıntı: mesajı görüntüle
    Siz kontrol yaparken Doğum günü mü diye kontrol yapıyorsunuz o yüzden doğum günü olan herkese gidiyor gidiyor.
    Nasıl bir kontrol yazmalıyım?
  • 17-02-2022, 17:38:54
    #5
    while( içine alın kodları

    while($row = $DogumSorgu )
    {
    if ($row->DogumGunuOlanlar == 1) {
    $Birthday = $row ->MemberBirthday;
    $dateOne = DateTime::createFromFormat("Y-m-d", date("Y-m-d"));
    $dateTwo = DateTime::createFromFormat("Y-m-d", $Birthday);
    $interval = $dateOne->diff($dateTwo);
    $YasGunu = $interval->format('%Y');
    MailGonder("$row ->MemberEmail","$YasGunu.Yaş günün kutlu olsun $row ->MemberName $row ->MemberLastname, Nice mutlu senelere...");
    }
    }

    test etmedim örnek olarak.
  • 17-02-2022, 17:50:02
    #6
    Sorgu bu şekilde olmalı

    $DogumSorgu=$db->GetRows("SELECT DATE_FORMAT(NOW(),'%e')=DATE_FORMAT(MemberBirthday ,'%e') AND DATE_FORMAT(NOW(),'%c')=DATE_FORMAT(MemberBirthday ,'%c') AS DogumGunuOlanlar,MemberID,MemberUsername,MemberNam e,MemberLastname,MemberEmail,MemberBirthday,Member Phone FROM members where MemberID");
  • 17-02-2022, 17:54:21
    #7
    ntka adlı üyeden alıntı: mesajı görüntüle
    Sorgu bu şekilde olmalı

    $DogumSorgu=$db->GetRows("SELECT DATE_FORMAT(NOW(),'%e')=DATE_FORMAT(MemberBirthday ,'%e') AND DATE_FORMAT(NOW(),'%c')=DATE_FORMAT(MemberBirthday ,'%c') AS DogumGunuOlanlar,MemberID,MemberUsername,MemberNam e,MemberLastname,MemberEmail,MemberBirthday,Member Phone FROM members where MemberID");
    Hocam cron ile her gün doğum günü kontrolü yapıldığını varsayarsak MemberID'yi nerden çekeceğim?
  • 17-02-2022, 17:58:48
    #8
    sorgu zaten memberid getiriyor.

    $row ->MemberID

    olarak kullanabilirsiniz.
  • 18-02-2022, 00:30:47
    #9
    Arkadaşlar hepinize cevaplarınız için teşekkür ediyorum. Yazdığım kodda sorun yokmuş. Sadece mail fonksiyonuna $posta->ClearAddresses(); fonksiyonunu yazmam gerekiyormuş.