Problem bei Wrapper-Script - Übergabe Mobilnummer International

PHP Newsletter Software/Script und E-Mail-Marketing Software SuperWebMailer

Moderator: mirko

Antworten
tronic1704
Beiträge: 2
Registriert: 21.03.2016, 19:09
Kontaktdaten:

Re: Problem bei Wrapper-Script - Übergabe Mobilnummer International

Beitrag von tronic1704 » 21.03.2019, 07:03

Hallo Mirko,

wow, super!!

es funktioniert.

Danke für die schnelle Hilfe.

Benutzeravatar
mirko
Beiträge: 21538
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Problem bei Wrapper-Script - Übergabe Mobilnummer International

Beitrag von mirko » 20.03.2019, 11:25

Ist kein urlencode in den Wrapper-Scripten enthalten, bei einem Plus ist das Fatal.

In allen Scripten im Verzeichnis wrapper ist angegeben:

Code: Alles auswählen

  $get = array();
  reset($_GET);
  foreach($_GET as $key => $value)
    $get[] = $key.'='.$value;

  $post = array();
  reset($_POST);
  foreach($_POST as $key => $value)
    $post[] = $key.'='.$value;
das ändern in

Code: Alles auswählen

  $get = array();
  reset($_GET);
  foreach($_GET as $key => $value)
    $get[] = $key.'='.rawurlencode ($value);

  $post = array();
  reset($_POST);
  foreach($_POST as $key => $value)
    $post[] = $key.'='.rawurlencode($value);

tronic1704
Beiträge: 2
Registriert: 21.03.2016, 19:09
Kontaktdaten:

Problem bei Wrapper-Script - Übergabe Mobilnummer International

Beitrag von tronic1704 » 20.03.2019, 02:37

Hallo Mirko,

habe folgende Problematik:

Arbeite mit eigens erstellten An- Abmelde- und Änderungsmasken.
Zudem arbeite ich mit den auf der Hauptdomain installierten Wrapper-Scripten,
um die SWM-Installation auf der Sub-Domain nicht preis geben zu müssen.

Es funktioniert auch alles tadellos, bis auf eine Sache, die mir aufgefallen ist:

Gebe ich eine Mobilfunknummer nach dem Schema 0176/123456789 ein, wird diese korrekt in das Feld in der Datenbank übernommen.
Gebe ich diese hingegen im internationalen Format +49176123456789 ein, so wird bei der Übernahme das +-Zeichen abgeschnitten. Im Datenbankfeld ist dann ein Leerzeichen, gefolgt von 49176123456789 enthalten, also ' 49176123456789'.

Dies scheint aber nur bei der Anwendung der Wrapper-Scripte aufzutreten, denn nehme ich den alternativen https://-Aufruf heraus und lasse es über die Subdomain arbeiten, wird die internationale Nummer korrekt übernommen (Sowohl in den Default, als auch in meinen eigens erstellten An-Abmelde- Änderungsmasken).

Gebe ich die Nummer manuell in der Datenbank im intern. Format ein und lasse sie per Änderungs-Link über das Formular und Wrapper-Script auslesen, dann klappt dies, nur das zurückspeichern eben nicht, dann ist das +-Zeichen weg.

Meine Vermutung liegt daher Nahe, das im Wrapper-Script etwas nicht stimmt und das + als Sonderzeichen nicht mit übergeben wird.

Wie könnte das Problem gelöst werden?

Vielen Dank.

Grüße, Tommy.

Antworten