• 05-08-2021, 12:44:12
    #1
    Arkadaşlar merhaba netgsmin get kodunu alıp foreach ile dinamik bir şekilde tüm üyelerime mesaj göndereceğim. Üyeliğim olmadığı için deneyemiyiorum rica etsem kod hata var mı kontrol edebilir misiniz?

     $username = "".$cekayar["netgsm_kullanici"].""; //
                                          $password = urlencode("".$cekayar["netgsm_sifre"].""); //
                                          $baslik = "".$cekayar["netgsm_baslik"]."";
    
                                        foreach($ceksuyeler as $m){
                                            
                                          function SMSgonderHttpGET(){
    
                                          
                                          $url= "https://api.netgsm.com.tr/sms/send/get/?usercode=".$username."&password=".$password."&gsmno=".$m["tel"]."&message=".$sms."&msgheader=".$baslik."";
    
                                          $ch = curl_init($url);
                                          curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
                                          curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
                                          $http_response = curl_exec($ch);
                                          $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    
                                          if($http_code != 200){
                                            echo "$http_code $http_response\n";
                                            return false;
                                          }
                                          $balanceInfo = $http_response;
                                          return $balanceInfo;
                                        }                                    
                                    }
                                      echo'<div style="text-align:center;"  class="alert alert-success" role="alert">
                                       Mesaj gönderildi!
                                        </div>';  
                                       SMSgonderHttpGET();
  • 05-08-2021, 12:49:09
    #2
    https://www.netgsm.com.tr/dokuman/#h...-g%C3%B6nderme detaylı anlatışmış url implode edip virgülle gönderin.

    yani foreach'e dökmek yerine url implode edip tek seferde istek atın.
  • 05-08-2021, 13:38:46
    #3
    function'u direk foreach içinde döndürmüşsünüz :/ function'u dışarı çıkartıp foreach içnerisinde çağırın veya içerisindeki kodları function dan çıkartın
  • 05-08-2021, 14:45:31
    #4
    aSSembLy adlı üyeden alıntı: mesajı görüntüle
    function'u direk foreach içinde döndürmüşsünüz :/ function'u dışarı çıkartıp foreach içnerisinde çağırın veya içerisindeki kodları function dan çıkartın
    örnek kodunu yazar mısınız rica etsem aklımda bir şey var ama yanlış olmasını istemiyorum.
  • 05-08-2021, 14:46:50
    #5
    emreakdascomtr adlı üyeden alıntı: mesajı görüntüle
    https://www.netgsm.com.tr/dokuman/#h...-g%C3%B6nderme detaylı anlatışmış url implode edip virgülle gönderin.

    yani foreach'e dökmek yerine url implode edip tek seferde istek atın.
    malesef anlamadım hocam.
  • 06-08-2021, 01:37:57
    #6
    Kara adlı üyeden alıntı: mesajı görüntüle
    malesef anlamadım hocam.
    Benzer bir sorunla bende karşılaştım. SMS gönderme fonksiyonunu foreach'tan çıkartın. Sql sorgunuzdaki numaraları bir array'e atayın ve bunun foreach ile döndürüp url'deki yere değişken adını yazın.
    Örnek aşağıda mevcut.

     $arr=[5051234567,5441234568,5441234562,5441234568,5441234556];
    $str="";
    foreach($arr as $item){
    $str.=$item.",";
    }
    $url= "https://api.netgsm.com.tr/sms/send/get/?usercode=kullanicidiniz&password=sifreniz&gsmno=$str&message=testmesaji&msgheader=MesajBaslik";
    
    echo $url;

    Çıktısı
  • 06-08-2021, 01:38:57
    #7
    Birdilimask adlı üyeden alıntı: mesajı görüntüle
    Benzer bir sorunla bende karşılaştım. SMS gönderme fonksiyonunu foreach'tan çıkartın. Sql sorgunuzdaki numaraları bir array'e atayın ve bunun foreach ile döndürüp url'deki yere değişken adını yazın.
    Örnek aşağıda mevcut.

     $arr=[5051234567,5441234568,5441234562,5441234568,5441234556];
    $str="";
    foreach($arr as $item){
    $str.=$item.",";
    }
    $url= "https://api.netgsm.com.tr/sms/send/get/?usercode=kullanicidiniz&password=sifreniz&gsmno=$str&message=testmesaji&msgheader=MesajBaslik";
    
    echo $url;

    Çıktısı
    sağolun hocam. Fakat kod karmaşık gelmiş tekrar atar mısınız rica etsem?
  • 06-08-2021, 01:39:04
    #8
    Kodları düzenledim saçma sapan birşey yaptı
  • 06-08-2021, 13:34:44
    #9
    Kara adlı üyeden alıntı: mesajı görüntüle
    malesef anlamadım hocam.
    yapmanız gereken sadece 2 satırdı.

    <?php
    
    $numaralar = [5051234567, 5441234568, 5448974521];
    
    $numaralar =  implode(',', $numaralar);
    
    function SMSgonderHttpGET($numaralar){
    
      $username = "850303xxxx"; //
      $password = urlencode("xxxx"); //
    
      $url= "https://api.netgsm.com.tr/sms/send/get/?usercode=kullanicidiniz&password=sifreniz&gsmno=".$numaralar."&message=testmesaji&msgheader=MesajBaslik";
    
      $ch = curl_init($url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
      $http_response = curl_exec($ch);
      $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    
      if($http_code != 200){
        echo "$http_code $http_response\n";
        return false;
      }
      $balanceInfo = $http_response;
      echo "MesajID : $balanceInfo";
      return $balanceInfo;
    }
    
    SMSgonderHttpGET($numaralar);
    ?>
    üstteki diziye numaraları girin veya çekin. iş tamamdır.