PHP Curl Cookie Problem

sweety321

Cadet 2nd Year
Registriert
Feb. 2007
Beiträge
22
hi all,

ich habe ein problem mit php und genaur mit curl.

Wenn ich eine Website aufrufe per Curl und angebe, dass er alle cookies die curl erhält in eine datei speichern soll namens "cookie.txt" macht er das nicht.
Wenn ich die datei cookie.txt schon vorher anlege führt er das script garnicht aus.
Dem Ordner wo ich alle dateien drin liegen habe sowie auch alle dateien haben chmod 777 zugewiesen.
ich weis nicht was ich falsch mache so oder so legt er keine cookie.txt an oder schreibt in sie.

es wäre nett wenn mir wer einen tipp geben könnte warum das so nicht funktioniert.

danke schonmal im vorraus

Gruß sweety321



Hier mein Script:
PHP:
<?php
error_reporting(E_ALL);

$cookie = "cookie.txt";

$website = "website";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$website);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "u=blubibla");
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_REFERER,$website);
curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4 (.NET CLR 3.5.30729)');
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);


$buffer = curl_exec ($ch);


curl_close ($ch);
unset($ch);


echo $buffer;

	
?>
 
^^ push ^^

hat hier keiner das Fachwissen eben mir bei Curl weiterzuhelfen?
 
nein hab das auch schon versucht dachte z.b. dass die datei angelegt wird und nach dem curl ausgeführt wurde gelöscht wird aber das was nicht so
 
PHP:
<?php
file_put_contents ("cookie.txt", "test");
?>
Schreibt dieses Script beim Aufruf was in die Datei (lass das ganze CURL mal weg und probier nur das)? Wenn nicht, dann hast du ein Problem mit den Zugriffsrechten auf den Ordner. Eventuell hilft es auch, wenn du mal den absoluten Pfad angibst.
 
also das geht hab ja auch allen dateien und ordnern 777 chmod gegeben also daran kanns definitiv nicht liegen...

hat sonst noch wer nen vorschlag :) ?

danke im vorraus

Gruß sweety321
 
is der besitzer bzw die gruppe der ordner/dateien auch richtig? hatte da auch mal probleme.
 
Gibt es denn keinerlei Fehlermeldung? Und ist das PHP Curl Modul bei dir überhaupt aktiviert worden?
 
Kannst dich ja mal bei mir in ICQ melden. Die Nummer ist 112402029.

Habe mich auch einen längeren Zeitraum mit php-curl beschäftigt und kann dir ein paar Ausschnitte zeigen (auch mit Cookies). Einfach mal anschreiben :)

Lg R3pT1l3
 
Genau, anschreiben ... das ist zwar nett gemeint von dir, aber nicht wirklich Sinn eines Forums.

Oder soll dich dann demnächst jeder anschreiben, der diesen Beitrag liest und ein ähnliches Problem hat? :D
 
anschreiben mach ich mal morgen oder übermorgen wenn ich zeit hab :)

und es ist kein rechteproblem und auch curl ist aktiviert, da ich ja ganz normal mit curl seiten fetchen kann halt nur keine cookies.

Gruß sweety321
 
Ja schon klar, es sollte eigentlich auch besser gesagt nur als "Erinnerung" gedacht sein. Naja hier mal der Codeausschnitt. Stimmt eigentlich mit deinem soweit überein wie ich das sehe. Was für eine Curl Version hast du denn? Hab mir den Thread mal abonniert

PHP:
$ch = @curl_init();
@curl_setopt($ch, CURLOPT_URL,				"http://www.xxx.to/login");
@curl_setopt($ch, CURLOPT_LOW_SPEED_LIMIT,   61440);
@curl_setopt($ch, CURLOPT_LOW_SPEED_TIME,    20);
@curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,    25);
@curl_setopt($ch, CURLOPT_TIMEOUT,           	1380);
@curl_setopt($ch, CURLOPT_HEADER,			TRUE);
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION,	TRUE);
@curl_setopt($ch, CURLOPT_RETURNTRANSFER,	TRUE);
@curl_setopt($ch, CURLOPT_POST,				TRUE);
@curl_setopt($ch, CURLOPT_POSTFIELDS,		$data['post']);
@curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 	FALSE);
@curl_setopt($ch, CURLOPT_USERAGENT, 		"Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7");
@curl_setopt($ch, CURLOPT_COOKIEJAR, 		"cookies-xxx.txt");
@curl_setopt($ch, CURLOPT_COOKIEFILE, 		"cookies-xxx.txt");

Wenn keine .txt Datei vorhanden ist, wird Curl automatisch die .txt Datei anlegen. Dort wird das Cookie dann gespeichert und Curl wird automatisch bei jedem weiteren Aufruf darauf zugreifen. Bei mir funktioniert es auf jedenfall bestens.


Ciao
R3pT1l3
 
Zuletzt bearbeitet:
Zurück
Oben