tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
385
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    Hallo,

    ich habe da ein kleines aber dennoch gravierendes Problem beim auslesen einer Mail von ebay.

    So sieht die Mail aus:
    Bitte beachten Sie, dass es sich bei
    dieser E-Mail um eine vom System versendete Information handelt. Eine
    Antwort auf diese E-Mail mittels ?Antwort? oder der Antwort-Funktion
    Ihres Mailprogramms ist nicht möglich. Bei Fragen an unseren
    Kundenservice klicken Sie bitte auf den folgenden Link oder kopieren Sie
    ihn in Ihren Browser:

    http://pages.ebay.de/help/basics/select-support.html

    -----------------------------------------------------------------
    Herzlichen Glückwunsch blablub!
    -----------------------------------------------------------------
    Hallo blablub,
    xxx hat am 28.02.04 20:38:50 MEZ den folgenden Artikel über eBay
    erworben:


    Wenn Sie Versandkosten oder andere
    Gebühren auflisten möchten, senden
    Sie diese Informationen bitte an den Käufer


    http://cgi3.ebay.de/aw-cgi/eBayISAPI...llerUpdateDeta
    ils&itemId=2383070122&transId=0&buyerid=0&ssPageName=ADME:L:EOASE:1
    -----------------------------------------------------------------
    KONTAKTDATEN
    -----------------------------------------------------------------
    Mitgliedsname: xxx
    Name: xxx xxx
    Straße: xxx xxx
    Ort: xxxxx xxx
    Land: Deutschland

    -----------------------------------------------------------------
    ANGABEN ZUM ARTIKEL
    -----------------------------------------------------------------
    Artikelbezeichnung: Artikel halt
    Artikelnummer: 1234567890
    Angebotsende: 28.02.04 20:38:50 MEZ
    Anzahl der Gebote: 5
    Verkäufer: blablub:
    mailto:verkaeufer@mail.de
    Käufer: xxx: mailto:kaeufer@mail.de



    -----------------------------------------------------------------
    Einzelheiten zur Bezahlung:
    -----------------------------------------------------------------
    Artikelpreis: EUR 99,99
    Menge: 1
    Betrag: EUR 99,99*


    Verpackung & Versand:
    Versicherter Versand: EUR 11,00


    Ihre Zahlungshinweise an den Käufer:
    [nicht angegeben]


    Jetzt zum Problem. Ich möchte die relevanten Daten aus der Mail auslesen und in eine Datenbank speichern. Klappt auch prima, bis auf die Versandkosten (egal ob Versicherter Versand oder Verpackung & Versand).
    Folgende Zeile liest z.B. die Artikelnummer aus:

    PHP-Code:
    $art_nr    trim(strtok(substr($mailstrpos($mail'Artikelnummer: ')+strlen('Artikelnummer: ')), "\n")); 
    Bei den versandkosten habe ich das so gemacht:

    PHP-Code:
    $versand   trim(str_replace("EUR """strtok(substr($mailstrpos($mail'Versicherter Versand: ')+strlen('Versicherter Versand: ')), "\n"))); 
    Seltsamerweise kommt aber immer nur folgendes bei "echo $versand" raus:

    0.00


    In der Datenbank habe ich den Datensatz als "decimal 15,2" deklariert (mit standard 0.00).
    Er kommt einfach nicht an die VKosten dran, warum auch immer
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

  2. #2
    MiLa MiLa ist offline Mitglied Smaragd
    Registriert seit
    Aug 2003
    Beiträge
    1.166
    Erstmal können wir davon ausgehen, dass er nichts in die Datenbank einfügt, daher greift der Defaultwert.

    Versuch doch einfach mal neTestausgabe per
    PHP-Code:
    echo $versand
    zu machen, was bekommste da zurück?
     

  3. #3
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    Hi,

    ersetz mal das Komma durch nen Punkt
     
    Gruß German

  4. #4
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    Welches Komma soll ich ersetzen... ?
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

  5. #5
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    Original geschrieben von mC pAiN
    Welches Komma soll ich ersetzen... ?
    Versicherter Versand: EUR 11,00
    ...........................................^ das Komma
     
    Gruß German

  6. #6
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    Erm... Wie soll ich das ersetzen? Das ist Part der Mail und so von ebay festgelegt. Und daran wirds nicht liegen, weil es beim Artikelpreis auch klappt.

    Ich denke, ich habe eine neue Ahnung woran es liegen könnte:

    Die Versandkosten sind der einzige "Part", wo 2 Wörter (siehe: "Versicherter Versand") - also mit Leerzeichen - vorkommen. Muss ich evtl. beim strpos und strlen nicht "Versicherter Versand: " sondern "VersicherterVersand: " nehmen wegen dem trim() ?
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

  7. #7
    Avatar von aquasonic
    aquasonic aquasonic ist offline Mitglied Brillant
    Registriert seit
    Jan 2004
    Ort
    Schweiz :: Bern
    Beiträge
    942
    Ich denke nicht dass es daran liegt, weil trim() ist ja ganz aussen und wird somit erst ausgeführt wenn alle andere ausgeführt wurden...Aber probier es doch mal, gibt ja nichts zu tun und die Lösung hättest du schon lange wenn du es anstatt hier gefragt, einfach gemacht hättest...
     
    MfG AqUaSoN!C

    o Wie man richtig Fragen stellt o

    o Nicht in Problemen sondern in Lösungen denken! o

    o Es gibt 2 Dinge, die sind unendlich: das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir noch nicht ganz sicher. o

    > Meine Linksammlung > http://linksys.aquasonic.ch

    > Mein Wiki > http://wiki.aquasonic.ch

  8. #8
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    Ich hätte ja auch schon lange gemacht, aber leider hab ich gerade keine eBay Mail zur Hand. Das ganze wird mittels CronJob ausgelesen und die entsprechenden Mails direkt gelöscht... Sonst hätte ich sozusagen eine Endlosschleife. Vielleicht kann ich heute Abend wenn wieder eine Auktion endet, testen...
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

  9. #9
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    Original geschrieben von mC pAiN
    Erm... Wie soll ich das ersetzen? Das ist Part der Mail und so von ebay festgelegt. Und daran wirds nicht liegen, weil es beim Artikelpreis auch klappt.
    Du versuchst in ein "decimal 15,2"-Feld eine Zahl mit Komma einzutragen, wäre mir neu, dass das korrekt funktioniert. Aber wenns beim Artikelpreis auch klappt pass doch den an.

    Ich habe auch eine neue Ahnung woran es noch liegen könnte, versuch das mal:
    PHP-Code:
    $versand trim(str_replace(",""."strtok(substr($mailstrpos($mail'Versicherter Versand: EUR')+strlen('Versicherter Versand: EUR')), "\n"))); 
     
    Gruß German

  10. #10
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    Ok, werde das ganze mal testen.

    Vielen Dank für eure Ratschläge. Werde euch auf dem laufenden halten...
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

  11. #11
    Avatar von mC pAiN
    mC pAiN mC pAiN ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Ort
    Wipperfürth
    Beiträge
    117
    So, hatte gestern eine beendete Auktion. Habe gesehen, dass die Mail von eBay doch noch etwas anders aussieht. Hatte eine etwas ältere vorher als Vorlage:

    Hier die korrekte Mail:

    Bitte beachten Sie. dass es sich bei dieser E-Mail um eine vom System
    versendete Information handelt. Eine Antwort auf diese E-Mail mittels
    ?Antwort? oder der Antwort-Funktion Ihres
    Mailprogramms ist nicht möglich. Bei Fragen an unseren Kundenservice klick
    en Sie bitte auf den folgenden Link oder kopieren Sie ihn in Ihren
    Browser:

    http://pages.ebay.de/help/basics/select-support.html

    -----------------------------------------------------------------
    Herzlichen Glückwunsch xxx!
    -----------------------------------------------------------------
    Hallo xxx.
    xxx hat am 31.07.04 20:55:49 MESZ den folgenden Artikel über eBay
    erworben:

    Damit Ihre zukünftigen Käufer rasch und einfach per Überweisung bezahlen
    können. geben Sie bitte Ihre Bankkontodaten für Überweisung Plus an.

    -----------------------------------------------------------------
    KONTAKTDATEN
    -----------------------------------------------------------------
    Mitgliedsname: xxx
    Name: xxx
    Straße: xxx xx
    Ort: xxxxx xxx
    Land: Deutschland

    -----------------------------------------------------------------
    ANGABEN ZUM ARTIKEL
    -----------------------------------------------------------------
    Artikelbezeichnung: Artikel halt
    Artikelnummer: 1234567890
    Angebotsende: 31.07.04 20:55:49 MESZ
    Anzahl der Gebote: 1
    Verkäufer: xxx: mailto:verkaeufer@mail.de
    Käufer: xxx: mailto:kaeufer@mail.de



    -----------------------------------------------------------------
    Einzelheiten zur Bezahlung:
    -----------------------------------------------------------------
    Artikelpreis: EUR 55.00
    Menge: 1
    Betrag: EUR 55.00



    Verpackung & Versand:
    Versicherter Versand: EUR 10.00

    Versandversicherung pro Artikel:


    Ihre Zahlungshinweise an den Käufer:
    [nicht angegeben]

    ...

    Und hier mal das, was er bei "$versand" ausgibt:

    dass es sich bei dieser E-Mail um eine vom System
    Keine Ahnung warum. Ich werd jetzt mal den letzten Vorschlag benutzen. Obwohl ich sehe gerade, dass bei den Beträgen in der Mail ja jetzt ein "." zwischen den Zahlen ist. Deshalb klappt das auch mit der Datenbank



    // edit:

    Wenn ich mir die Mail mit Outlook anschaue, dann sind hinter "Versicherter Versand:" mehr Leerzeichen als eins. Soll ich lieber noch ein trim() einbauen und dann "VersicherterVersand:EUR" machen oder ist das egal?
    Geändert von mC pAiN (01.08.04 um 11:22 Uhr)
     
    Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

    finest asian food

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 27.01.07, 18:35
  2. Antworten: 5
    Letzter Beitrag: 20.02.06, 19:36
  3. Antworten: 2
    Letzter Beitrag: 19.09.05, 18:03
  4. Fehler beim auslesen einer Datenbank mit PHP :(
    Von Suchfunktion im Forum PHP
    Antworten: 5
    Letzter Beitrag: 01.07.05, 07:49
  5. Fehler beim Auslesen einer Exceldatei
    Von TOLIK im Forum .NET Archiv
    Antworten: 0
    Letzter Beitrag: 18.10.04, 12:04