url aufrufen in schleife ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mrs_rookie
    antwortet
    so, vielen Dank erst mal, wie ich nach recherche über mögliche Zeichen in einer sms unter [COLOR=black][FONT=&quot]GSM 03.38 Default Character Set
    feststellen mußte, ist das mit dem Gradzeichen einer dieser ungeliebten Sonderfälle.

    Der GSM-Zeichensatz enthält das Gradzeichen grundsätzlich nicht.
    Alternativ wäre da nur noch eine Unicode SMS zu nutzen, die eine SMS dann aber automatisch auf 70 Zeichen beschränkt. Und einige ältere Handymodelle unterstützen diese SMS-Variante nicht.

    Vielleicht helfen diese Infos künftig auch anderen, die einen sms-versand realisieren wollen.
    [/FONT][/COLOR]

    Einen Kommentar schreiben:


  • mrs_rookie
    antwortet
    jupp, vielen Dank !

    ich hatte gar kein Zeichensatz angegeben, wie blöd von mir !
    Allerdings hab ich grad mal nachgeschaut, dieser Hinweis fehlt wirklich in deren Tutorial, dass sonst wirklich gut und kurz ist !

    Ich hab jetzt alles umlaute und Sonzeichen getestet, mit iso 8895-15
    bis auf das [COLOR=Red]°[/COLOR] klappt alles, ich werds mal mit utf-8 versuchen

    Einen Kommentar schreiben:


  • combie
    antwortet
    Sofort den richtigen Zeichensatz verwenden, oder passend konvertieren. In Der Doku des Dienstes sollte erklärt werden, welche Codierung erwartet wird.

    Einen Kommentar schreiben:


  • mkb_webprint
    antwortet
    Zitat von mrs_rookie Beitrag anzeigen
    erhalte ich als Klartext: [COLOR=royalblue][COLOR=darkred]Ein+Test+[/COLOR][/COLOR][COLOR=darkred]%C3%A4[/COLOR][COLOR=royalblue][COLOR=blue][COLOR=darkred]+das+Gateway[/COLOR]
    [COLOR=black]müßte das aber nicht:[/COLOR] [/COLOR][/COLOR][COLOR=royalblue][COLOR=blue]Ein+Test+[/COLOR][/COLOR][COLOR=blue]%FCber[/COLOR][COLOR=royalblue]+das+Gateway sein ?[/COLOR]

    [COLOR=royalblue][COLOR=black]Und daher erhalte ich in der Test-SMS das ganze dann so:[/COLOR]

    Ein Test [[ber das Gateway

    [/COLOR]
    Bei mir läuft es mit folgendem Code:
    PHP-Code:
    $text "Ein Test über das Gateway";
    $code urlencode(utf8_decode($text)); 
    Wenn du das jetzt mit urldecode ausgibst sollte es keine Probleme geben.

    Gruß

    Björn

    Einen Kommentar schreiben:


  • mrs_rookie
    antwortet
    Dankeschön,

    hat mir sehr geholfen, konnte nun "fast" alles wie gewünsht umsetzen !

    Ein kleines Problem hab ich aber noch, ich muss die übermittelten Texte urlencode übertragen, soweit so gut..

    Aber aus mir grad nicht sichtbaren Gründen hab ich problem mit Umlauten!
    Wenn ich das verwende:
    PHP-Code:
    $sms['message'] = "Ein Test über das Gateway"
    erhalte ich als Klartext: [COLOR=RoyalBlue][COLOR=DarkRed]Ein+Test+[/COLOR][/COLOR][COLOR=DarkRed]%C3%A4[/COLOR][COLOR=RoyalBlue][COLOR=Blue][COLOR=DarkRed]+das+Gateway[/COLOR]
    [COLOR=Black]müßte das aber nicht:[/COLOR] [/COLOR][/COLOR][COLOR=RoyalBlue][COLOR=Blue]Ein+Test+[/COLOR][/COLOR][COLOR=Blue]%FCber[/COLOR][COLOR=RoyalBlue]+das+Gateway sein ?

    [COLOR=Black]Und daher erhalte ich in der Test-SMS das ganze dann so:[/COLOR]

    Ein Test [[ber das Gateway

    [COLOR=Black]Wo mach ich was falsch ?[/COLOR]
    [/COLOR]
    Hier mein Script:

    PHP-Code:
    // Empfängerliste
    $receiver       = array();
    $receiver['0'] = '49172xxxxx';

    // Schleife um alle Empfänger anzusprechen
    foreach($receiver as $mobileArray => $mobileNo)
    {
        
    // 
        
    $sms = array();
        
    $request        "";                                            
        
    $url "http://examplegateway.de/?";                
        
    $sms['key']    = '*****';                                    
        
    $sms['message'] = "Ein Test über das Gateway"
        
    $sms['to']      = $mobileNo;  // Empfänger Nr. der SMS
        
    $sms['from']  = 'Mein Name';                            
        
        foreach(
    $sms as $key=>$val// Alle Parameter durchlaufen
        

          
    $request.= $key."=".urlencode($val); // url-encoded notwendig
          
    $request.= "&"
        }
        
        
    // CURL METHODE
        
    $ch curl_init();    
        
    curl_setopt($chCURLOPT_URL$url);          
        
    curl_setopt($chCURLOPT_RETURNTRANSFER,1);   
        
    curl_setopt($chCURLOPT_POST1);             
        
    curl_setopt($chCURLOPT_POSTFIELDS$request);
        
    $response curl_exec($ch);              
        
    curl_close($ch);                              
        
    $response_code intval($response); 

    Einen Kommentar schreiben:


  • combie
    antwortet
    Ich habe da mal einen Fetzen in meiner Grabbelkiste:
    (nur ein paar Dinge auf dein Problem angepasst)
    PHP-Code:
    <?php
    error_reporting
    (-1);
    ini_set('display_errors'TRUE); 


    function 
    sendsms($gateway,$sms,$recivername,$recivernr)
    {
        
    $sms['nr'] = $recivernr;
        
    $sms['message'] = sprintf($sms['message'],$recivername);
        return  
    file_get_contents($gateway.http_build_query($sms));
    }



    $smsgateway 'http://example.com/sendMessage.php?';

    $sms = array();
    $sms['message'] = " Hi %s heute feiern wir! \n Gruss Maxe";
    $sms['sender'] = 'Max Musterman';
    $sms['authentification'] = 'sdgrtrdxfhbr6342q35tgfw345';

    $reciver = array();
    $reciver['Karl'] = '49123456';
    $reciver['Anna'] = '491234567';

    foreach(
    $reciver as $key => $value)
        echo 
    sendsms($smsgateway,$sms,$key,$value),'<hr>';
    ?>
    Versuche zu verstehen, was es tut, und du kannst dein Problem lösen.

    Einen Kommentar schreiben:


  • mrs_rookie
    antwortet
    Guten Morgen Combie !!

    also mit den schleifen hab ich mich beschäftigt...
    ich nutze eine foreach um eine sms zu generieren, weil ich den text urlencoden muss und da bietet sich ein
    PHP-Code:
    foreach($param as $key=>$wert)

      
    $request.= $key."=".urlencode($wert); 
      
    $request.= "&";

    an.

    sobald ich weiß, wie ich das aufrufen der adresse realisiere, leg ich das alles in eine schleife, die je nach anzahl der rufnummern ausgeführt wird...

    aber an dieser Stelle bin ich noch nicht angelangt !

    Einen Kommentar schreiben:


  • combie
    antwortet
    Du solltest dich erstmal mit den Schleifen for, while und foreach befassen. Die SMSen kannst du sicherlich auch über den fopen-http-wrapper versenden, da brauchts meist kein cURL zu.

    Einen Kommentar schreiben:


  • mkb_webprint
    antwortet
    Sollte eigentlich funktionieren.
    Schreib dir doch einfach ein kleines Testscript bzw. lad dir ein cURL-Beispielskript hoch, führ es aus und dann siehst du ob es passt

    Einen Kommentar schreiben:


  • mrs_rookie
    antwortet
    wie ich grad feststelle, seh ich über die provider phpinfo(), dass ich in sachen curl das installiert habe :

    [COLOR=Blue]libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.8 libssh2/0.18 [/COLOR]

    reicht das aus, um mich mit curl zu beschäftigen und damit eventuell mein vorhaben umzusetzen ?

    Einen Kommentar schreiben:


  • mkb_webprint
    antwortet
    Hallo mrs_rookie,
    schau dir das mal an PHP: cURL - Manual.
    In Sachen externe URL's aufrufen bin ich zwar nicht der Meister, aber ich glaube es geht auch mit fopen http://php.net/fopen.

    Viel Erfolg

    Björn
    Zuletzt geändert von mkb_webprint; 22.07.2009, 09:14.

    Einen Kommentar schreiben:


  • mrs_rookie
    hat ein Thema erstellt url aufrufen in schleife ?.

    url aufrufen in schleife ?

    Guten Morgen.

    zuerst einmal..hallihallo... ich bin die neue aus berlin...

    ich hoffe, dass mir jemand von euch helfen kann, bei einem problem, was ich auf meiner seite habe.

    ich verwende schon einige zeit ein wenig php, aber noch nicht so lange daher weiß ich nich so genau, wie ich das folgende lösen kann:

    ich hab auf meienr webseite ein textfield, das platz für 160 zeichen hat, damit ich von dort aus sms versenden kann, nun möchte ich aber manchmal eine sms an mehrer empfänger versenden, was ich bisher nur manuell machen kann, aber das kostet viel zeit, wenn ich all meine freunde und bekannten erreichen möchte!

    zum wichtigen: um eine sms zu versenden, muss ich eine url aufrufen, die ein sms-gateway anspricht... ungefähr so:
    example.com/smsgateway.php?nr=49123456&message=heute+feiern+wir

    ich kenne bisher nur dieses header() funktion, die ich aber nicht in eienr schleife aufrufen kann. Wie kann man sowas sonst bewerkstelligen.
    Eventuell müßte ich auch einen statuscode 200 empfangen, damit ich weiß, dass die url komplett angenommen wurde...

    kann mir da jemand sagen, was ich mir dafür angucken muss, bzw wir man vorgeht um so etwas zu realisieren ?

    viele grüße
Lädt...
X