Webpage mit cUrl ausgeben lassen

Hallo liebe community.

Ich arbeite gerade an einem Code wo die aktuelle Webseite (im Bestellprozess) automatisch ausgegeben wird. Ich benutze cUrl um die Logindaten zu übergeben. Jedoch funktioniert das nicht wie gewünscht und es wird nur die Startseite ausgegeben (durch den redirect).

Mein Code ist folgender:

$page =  "http://www.".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

			$loginUrl = "http://meineurl.at/index.php?"; //action from the login form
			$loginFields = array('lgn_usr'=>'', 'lgn_pwd'=>''); //login form field names and values
			$remotePageUrl = "$page"; //url of the page you want to save  

			$login = getUrl($loginUrl, "post", $loginFields); //login to the site

			$remotePage = getUrl($remotePageUrl); //get the remote page

			function getUrl($url, $method='', $vars='') {
				$ch = curl_init();
				if ($method == 'post') {
					curl_setopt($ch, CURLOPT_POST, 1);
					curl_setopt($ch, CURLOPT_POSTFIELDS, $vars);
				}
				curl_setopt($ch, CURLOPT_URL, $url);
				curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
				curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
				curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies/cookies.txt');
				curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies/cookies.txt');
				$html = curl_exec($ch);
				curl_close($ch);
				echo $html;
			}

In der cookies.txt wird folgendes übergeben:

# Netscape HTTP Cookie File
# http://curl.haxx.se/rfc/cookie_spec.html
# This file was generated by libcurl! Edit at your own risk.

#HttpOnly_meineurl.at	FALSE	/	FALSE	0	language	0
#HttpOnly_meineurl.at	FALSE	/	FALSE	0	sid	ee4d0f107e0d9daee66cc355fd77f282
#HttpOnly_meineurl.at	FALSE	/	FALSE	0	sid_key	oxid
#HttpOnly_meineurl.at	FALSE	/	FALSE	1	aHistoryArticles	deleted
#HttpOnly_www.meineurl.at	FALSE	/	FALSE	0	language	0

EDIT: allow_url_fopen uns SSL für cUrl sind auch aktiviert.

Komme mit dieser Methode einfach nicht weiter…

Weis jemand wie man im Bestellprozess mit [B] file_get_contents[/B] die aktuelle Seite bekommen könnte?

Das gehört eigentlich in ein php-Forum und die Frage ist sehr unverständlich. Was soll denn die aktuelle Seite im Checkout sein, die angezeigt wird? Auf welcher Seite soll sich der Anwender befinden? Tip: Wenn Du Dich mit Curl in Oxid einloggen willst, musst Du ein paar Infos mehr übertragen als User und Passwort. file_get_contents loggt sich nicht ein.

Die Sache ist das bei einer Finanzierung die Kunden einen Bescheid von der Bank per e-Mail bekommen, bevor der Bestellvorgang überhaupt abgeschlossen wurde.

Ergo, der Kunde denkt das alles schon fertig wäre bevor er alle Schritte fertig gemacht hat und wir bekommen keinen einzigen Bescheid, außer den von der Bank wenn die Finanzierung genehmigt wurde.

Ich will also die Bestelldaten(Rechnugsadresse, Produkte, …) im letzten Bestellschritt an uns per e-Mail verschicken.

Im Moment versuche ich einen anderen Ansatz:

  • per jquery Daten auslesen
  • an php script schicken und email erstellen

JS:

<script>
		$(document).ready(function(){
			
			var address = $("#orderAddress").text();
			
			$.ajax({
				data: address,   
				success:function(html){
				   alert("juhu");
				}
			});
		
		});
	
	</script>

PHP:

$data = $_GET['address'];
			print_r($data);

Ich bekomme zwar die Meldung dass der Request erfolgreich war doch ich weis nicht wie ich die Daten übernehmen soll.

Ich verstehe das Problem so richtig immer noch nicht. Nach Abschluß der Bestellung geht doch eh eine Mail an dich und den Kunden. Oder wird das vom Finanzierungsmodul, das du da verbaut hast, verhindert?

$data = $_GET['data'];
print_r($data);

ist das was du suchst.

Oder, um die Ausgabe beizubehalten:


var address = $("#orderAddress").text();
...
data:{address:address},
...

Mit Bankdaten wäre ich da sehr vorsichtig. Besser die Funktionen (z.B. sendmail()) von oxid nutzen und abwandeln->Modul :wink:

@msslovi0

Jop. Bis nicht jeder Schritt fertig ist, bekommen wir nichts.

Das witzige ist dass die jedoch bereits nach dem ersten Schritt ihre eigene Bestätigung dem Kunden schicken…

@foxido

Danke, das hats zum laufen gebracht :wink:

So nen Anbieter für Finanzierung hatten wir auch mal. Rausgeworfen, Klarna Part Payment rein, alles gut.

[QUOTE=msslovi0;157129]So nen Anbieter für Finanzierung hatten wir auch mal. Rausgeworfen, Klarna Part Payment rein, alles gut.[/QUOTE]

hahahahha

Klarna + alles gut =/= reality

Well, YMMV.