XH-Shop

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
frase
Posts: 2811
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Sun Jul 07, 2019 1:41 pm

cmb wrote:
Sun Jul 07, 2019 1:27 pm
Nö, isser nicht; muss nur zu viel phpensterln.
Was ihr jetzt alle gehört und gespürt habt, war kein Erdbeben in DE, sondern der Stein, der mir gerade von dem Ding ... Na, wie heißt das gleich? Ach ja ... Herzen gefallen ist.

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Mon Jul 08, 2019 11:28 am

frase wrote:Ich kann es ja gar nicht mit ansehen, wie du hier leidest.
Nur versuchen, etwas Trost zu spenden ...
Wenn die Ausfälle sporadisch sind, also zwischendurch wieder mal was klappt, dann deutet das eher auf externe Ursachen hin.
Ich weiß, das hilft dir alles nichts :cry:
Doch, etwas Trost ist immer gut ;) danke! Und nebenbei war mir nicht klar, dass das wohl eher "ein externes Problem" ist.
PS: jetzt sind wieder ein paar Bestellungen regulär durchgegangen - freufreu Verzweiflung weg
cmb wrote:
Sun Jul 07, 2019 1:27 pm
Als Debug-Hilfe könntest du mal diese Zeile ändern zu:

Code: Select all

$this->handshakeFailed(sprintf('unexpected response for IPN pingback request [%s]: %s', $payload, trim($body)));
Danke dir dass du dich trotz Zeitmangel meiner annimmst. Hab die Zeile geändert - möge es nützen! Aufgrund eines früheren Problems steht bei mir noch ein bißchen was anderes drin. Insgesamt also jetzt:

Code: Select all

        } elseif (in_array('INVALID', $lines)) {
                // just ignore this IPN
// siehe  https://cmsimpleforum.com/viewtopic.php?p=65047#p65047
            $this->handshakeFailed('IPN pingback request is INVALID');				
        } else {
// siehe https://cmsimpleforum.com/viewtopic.php?p=72092#p72092
$this->handshakeFailed(sprintf('unexpected response for IPN pingback request [%s]: %s', $payload, trim($body)));
        }
        fclose($fp);
        while (ob_get_level()) {
            ob_end_clean();
        }
        header('HTTP/1.1 200 OK');
        exit;
    }
denke das müsste korrekt sein so. Mal sehen was passiert wenn es wieder auftritt...

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Tue Jul 09, 2019 7:51 pm

paypal hat paarmal geklappt, jetzt wieder paarmal nicht.

Die erweiterte Meldung ist:

Code: Select all

2019-07-09 17:38:38	error	xhshop	ipn	Handshake failed! (unexpected response for IPN pingback request [POST /cgi-bin/webscr HTTP/1.1
Host: ipnpb.paypal.com:443
Content-Type: application/x-www-form-urlencoded
Content-Length: 1216
User-Agent: XH-Shop-IPN-VerificationScript
Connection: close

cmd=_notify-validate& ... usw. Bestelldaten die vorher nicht protokolliert wurden. 
Der Rest danach ist gleich.
Weiß nicht ob das weiterhilft.

Gibt es denn keine Möglichkeit, alle vom Kunden eingegebenen Daten zu protokollieren, nach Klick auf Button "mit Paypal bezahlen", aber bevor Paypalbezahlung gestartet wird?

cmb
Posts: 13227
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Tue Jul 09, 2019 9:09 pm

albert wrote:
Tue Jul 09, 2019 7:51 pm
Die erweiterte Meldung ist:
[…]
Du hast eigentlich da abgeschnitten, wo es für mich interessant geworden wäre. Mir ging es v.a. darum, ob der Request-Body (also ab cmd=_notify-validate&) auch korrekt kodiert wurde, und ob die angegebenen Felder auch tatsächlich aus dem Formular stammen. Falls das so ist, dann wäre die Antwort "Bad Request" nämlich möglicherweise ein Fehler seitens des Bezahlkumpels.
albert wrote:
Tue Jul 09, 2019 7:51 pm
Gibt es denn keine Möglichkeit, alle vom Kunden eingegebenen Daten zu protokollieren, nach Klick auf Button "mit Paypal bezahlen", aber bevor Paypalbezahlung gestartet wird?
Geht auf jeden Fall. Ich denke, man müsste direkt vor dieser Zeile etwa folgende einfügen:

Code: Select all

XH_logMessage('info', 'xhshop', 'final_checkout', serialize($_SESSION));
Christoph M. Becker – Plugins for CMSimple_XH

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Wed Jul 10, 2019 6:23 am

cmb wrote:
Tue Jul 09, 2019 9:09 pm
Du hast eigentlich da abgeschnitten, wo es für mich interessant geworden wäre.
Weil da Kundendaten drin sind hatte ich das hier weggelassen - als PN an dich

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Wed Jul 10, 2019 6:33 am

PN ging nicht. Also der Rest hier mit gekürzten Kundendaten:

Code: Select all

cmd=_notify-validate&mc_gross=66.70&protection_eligibility=Eligible&address_status=confirmed&item_number1=1&item_number2=2&payer_id=TYS627X...&address_street=...str.+40&payment_date=08%3A38%3A23+Jul+09%2C+2019+PDT&payment_status=Completed&charset=UTF-8&address_zip=70197&mc_handling=0.00&first_name=R...&mc_fee=2.01&address_country_code=DE&address_name=R...+S...&notify_version=3.9&custom=8b9a4bd47ca16a2738a4e6911d2f5092&payer_status=verified&business=info%40natur-und-handgemacht.de&address_country=Germany&num_cart_items=2&address_city=stuttgart&verify_sign=AW134ETOT.ABR9MxinB5hcWpf2MaAtqYM6UxWBfPFYz9vWRGf15Jiw1Y&payer_email=s...r...%40web.de&txn_id=0XU09...325&payment_type=instant&last_name=S...&address_state=&item_name1=Dinkelkissen%2C+Dinkel-Kopfkissen+40x80+cm+-+incl.+5+Liter+Reserve%2C&receiver_email=info%40natur-und-handgemacht.de&item_name2=Schulter-Nackenkissen%2C+Affen+blau&payment_fee=&shipping_discount=0.00&quantity1=2&insurance_amount=0.00&quantity2=1&receiver_id=C5QFABZ3ZSZCG&txn_type=cart&discount=0.00&mc_gross_1=49.80&mc_currency=EUR&mc_gross_2=16.90&residence_country=DE&shipping_method=Default&transaction_subject=&payment_gross=&ipn_track_id=e2ad8ea8bc3f0]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
</body></html>)

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Wed Jul 10, 2019 6:59 am

Hab den code "XH_logMessage..." eingebaut und die Daten kamen bei Testkauf schön rüber. Allerdings war der Testkauf "ipn-processed" und die Daten kamen nach

Code: Select all

2019-07-10 08:45:47	info	xhshop	mail	Bestätigung versendet an info@...de
2019-07-10 08:45:48	info	xhshop	mail	Benachrichtigung über Bestellung von info@...de versendet
2019-07-10 08:45:48	info	xhshop	final_checkout	a:3:{s:8:"xhsToken";s:24:"e1fefee ... 
Bei "ipn failed" wurden bisher keine Emails versendet. Werden denn dann die Daten überhaupt geloggt oder bricht das vorher ab? Sollte "XH_logMessage..." deshalb vielleicht lieber früher passieren, also weiter oben stehen?

cmb
Posts: 13227
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Wed Jul 10, 2019 8:19 am

albert wrote:
Wed Jul 10, 2019 6:59 am
Bei "ipn failed" wurden bisher keine Emails versendet. Werden denn dann die Daten überhaupt geloggt oder bricht das vorher ab? Sollte "XH_logMessage..." deshalb vielleicht lieber früher passieren, also weiter oben stehen?
Der Ablauf sollte so sein: bei final checkout werden die Daten protokolliert; dann wird die IPN verarbeitet; bei Erfolg wird dann die Mail gesendet. Es müssten also auch bei IPN Fehlschlag zumindest die Daten gespeichert werden.
Christoph M. Becker – Plugins for CMSimple_XH

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Fri Jul 12, 2019 7:22 pm

cmb wrote:
Tue Jul 09, 2019 9:09 pm
Geht auf jeden Fall. Ich denke, man müsste direkt vor dieser Zeile etwa folgende einfügen:

Code: Select all

XH_logMessage('info', 'xhshop', 'final_checkout', serialize($_SESSION));
Wie ich befürchtet hatte: Bei paypal "handshake failed" wird diese logMessage nicht geschrieben!

Habe diese Codezeile jetzt eins höher geschrieben, also vor " if ($viaIpn) {"

Da müsste das jetzt wohl bei jeder Bezahlart geloggt werden. (?)

albert
Posts: 518
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Sat Jul 13, 2019 7:50 am

Für mehr Übersicht im logText habe ich jetzt

Code: Select all

XH_logMessage('info', 'xhshop', 'final_checkout', serialize($_SESSION['xhsCustomer']));
Das sind die Daten, die ansonsten verloren gehen. Klappt bisher bei allen Bezahlarten. Mal sehen obs auch tut bei "handshake failed" ...

Post Reply