Ogłoszenie

Zwiń
No announcement yet.

GGBot

Zwiń
X
 
  • Filtr
  • Czas
  • Pokaż
Wyczyść wszystko
new posts

    GGBot

    Witam
    mam pytanko co jest żle zrobione ze pkik crona odsyla podwójną wiadomość ??
    Jak coś to gg:36204710

    #2
    Może więcej szczegółów ? nikt tu nie jest jasnowidzem
    CzatGG: Kliknij!
    Moje GG: Kliknij!

    Komentarz


      #3
      . Jak przychodzi czas wyslania danej wiadomości to wysyła ją podwujnie mógł by ktoś powiedzieć co zle zrobiłem


      Kod php:
        <?php
      date_default_timezone_set
      ('Europe/Warsaw');
      require_once(
      '/home/xxxx/public_html/nowy/nowy/api/PushConnection.php');
      require_once(
      '/home/xxxx/public_html/nowy/nowy/api/MessageBuilder.php');
      require_once(
      '/home/xxxx/public_html/nowy/nowy/api/konfiguracja.php');
      PushConnection::$BOTAPI_LOGIN=$ApiMail;
      PushConnection::$BOTAPI_PASSWORD=$ApiPass;
      $m = new MessageBuilder();
      $p = new PushConnection($ApiNr);
      $db = new mysqli($BaseHost$BaseUser$BasePass$BaseName);
      $now time();
      $hour date('H');
      $miesiac date('n');
      $rok date('Y');
      $dzien date('d');

      $sleep =
          
      $i date('i');

      $q $db->query("select * from `nicki` ORDER BY RAND() limit 3");
           while(
      $pozdro $q->fetch_assoc())
                {
      $pozdrowienia $pozdro['nick'];

      $emota rand(1,8);
      if(
      $emota == 1$emota ";)";
      if(
      $emota == 2$emota ":)";
      if(
      $emota == 3$emota ":]";
      if(
      $emota == 4$emota ":>";
      if(
      $emota == 5$emota ";*";
      if(
      $emota == 6$emota "<lol>";
      if(
      $emota == 7$emota "<lol2>";
      if(
      $emota == 8$emota ":*";
      }
      $dzientygodnia date('l');
      $miesiac date('n');
      $rok date('Y');
      $dzien date('d');
      $czas=date("G:i:s");
              
      $miesiac_PL = array(=> '01'=> '02'=> '03'=> '04'=> '05'=> '06'=> '07'=> '08'=> '09'10 => '10'11 => '11'12 => '12');
      $dzientygodnia_PL = array('Monday' => 'poniedziałek''Tuesday' => 'wtorek''Wednesday' => 'środa''Thursday' => 'czwartek''Friday' => 'piątek''Saturday' => 'sobota''Sunday' => 'niedziela');
      $croon "\r\n----------------\r\nWiadomość wysłana automatycznie. Jeśli niechczesz otrzymywać tych wiadomości wpisz /croon";

      $qq $db->query("select * from `nicki` AND croon = 'tak'");
          
      $la 0;
          while(
      $nq $qq->fetch_assoc())
          {
          
      $odb[] = $nq['numer'];
          
      $la++;
          }         
      if(
      $hour == '6' AND $i == '00'){
      $m->addBBCode("Witam wszystkich użytkowników GGbota :)\r\nDziś jest ".$dzientygodnia_PL[$dzientygodnia]." ".$dzien."-".$miesiac_PL[$miesiac]."-".$rok." rok godzina ".$czas." Życzymy wszystkim miego dnia :)\r\n\r\nPozdrowienia od GGBota otrzymuje: $pozdrowienia $emota $croon ")->setRecipients($odb);
      $p->push($m);
      }        
      if(
      $hour == '10' AND $i == '00'){
      $m->addBBCode("Zachecamy wszystkich do korzystania z naszego GGBota Reklamowego :D $croon ")->setRecipients($odb);
      $p->push($m);
      }
      // informacja

      if($dzien == '28' AND $miesiac == '03' AND $hour == '22' AND $i == '00'){
      $m->addBBCode("Zmiana z czasu zimowego (astronomicznego) na letni nastąpi w nocy z soboty (29 marca) na niedzielę (30 marca) 2014 r. $croon")->setRecipients($odb);
      $p->push($m);
      }
                            
      ?>
      Ostatnio edytowany przez Qrix; [ARG:4 UNDEFINED]. Powód: tag PHP
      Jak coś to gg:36204710

      Komentarz


        #4
        Ojj kolego.
        1. Wstawiaj kod w zniaczniki bb code [ *php* ] (bez gwiazdek, dodałem żeby parser nie złapał).
        2. Ogarnij kod bo jest go dużo zbędnego. Choćby $miesiac_PL czy losowanie emotikona. Zadajesz serwerowi niepotrzebnie 8 dodatkowych if'ów zamiast skorzystać z array_rand. Ale przyznam się, że sam miałem nie raz problemu z cronem dając mu zbyt ciężkie skrypty, które z przeglądarki działały na luzie. (nie wiem skąd te problemy).
        3. Nie widzę nigdzie błędu w kodzie przez co skrypt miałby wysyłać podwójną wiadomość. Być może masz po prostu ustawione 2 zadania cron na ten plik? Sprawdź to dając w tym pliku wysłanie maila pod twój adres. Możesz też spróbować zaraz po wysłaniu skasować obiekty klasy MessageBuilder i PushConnection. Wtedy kategorycznie kasujesz możliwość wysłania wiadomości ponownie. Chyba, że coś się dzieje w klasach BotApi.

        Pozdrowienia

        Komentarz

        Pracuję...
        X