CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
06.11.2006, 15:24:57
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
cURL Problem - Bitte um Hilfe
Hallo Forum,
ich habe folgendes Problem:
Es gibt ein Perl-Script was eine Authentifizierung durchführt anhand einer Nummer und einem Passwort.
Wenn ich dies in einem Browser ausführe gibt er mir 3 Werte zurück:
~True ~FALSE ~Nicht-Standart-Benutzer
Nun will ich gerne mittels einem PHP-Anmeldeformular diese Authentifizierung einbringen.. Leider komme ich nicht weiter.
Code:
<?php
$site=$_REQUEST["site"];
if ($site==NULL) {$site="index";}
if (!extension_loaded('curl')) {dl('curl.so');}
echo'<html>
...
...
if ($site=="index") { echo '
<form name="check" action="index.php?site=login" method="post" enctype="multipart/form-data">
<table cellspacing="2" cellpadding="2" border="0">
<tr>
<td>Benutzernummer: </td>
<td><input type="text" name="b_nr" size="20"></td>
</tr>
<tr>
<td>WEBOPAC-Kennwort: </td>
<td><input type="password" name="kw" size="20"></td>
</tr>
</table><p></p>
<input type="submit" value="Senden" name="check"></p> </form>';}
if ($site=="login") {
$b_nr=$_POST["b_nr"];
$kw=$_POST["kw"];
$url="https://xxx.xxx.xxx.xxx/cgi-bin/test_auth.pl?INST=testauth.pl&BEN=".$b_nr."&PWD=".$kw."";
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, $url);
$t = curl_exec($c);
echo $c;
curl_close($c);
}
echo '</body>
</html>';
?>
Wenn ich nun eine Nummer und das korrekte passwort eingebe. erscheint im Browser immer:
Resource id #1
Aber eigentlich wollte ich gerne das er mir erstmal o.g. Zeile:
~True ~FALSE ~Nicht-Standart-Benutzer
anzeigt.
Kann mir jemand von Euch weiterhelfen.
Besten Dank im Vorfeld.
Thomas
|
06.11.2006, 15:37:40
|
Member
|
|
Registriert seit: Oct 2006
Beiträge: 610
|
|
AW: cURL Problem - Bitte um Hilfe
Gib $t aus!
PHP-Code:
$c = curl_init(); curl_setopt($c, CURLOPT_RETURNTRANSFER, $url); $t = curl_exec($c); echo $t; curl_close($c);
|
07.11.2006, 07:38:59
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
AW: cURL Problem - Bitte um Hilfe
geht leider nicht
es kommt ne leere seite
|
07.11.2006, 07:48:42
|
Member
|
|
Registriert seit: Oct 2006
Beiträge: 610
|
|
AW: cURL Problem - Bitte um Hilfe
Hätte mal vorher ins Manual schauen sollen, ist das erste mal dass ich Curl benutze.. So geht das:
PHP-Code:
$c = curl_init(); curl_setopt($c, CURLOPT_URL, $url); curl_setopt($c, CURLOPT_HEADER, 0); curl_setopt($c, CURLOPT_RETURNTRANSFER, true); $t = curl_exec($c); echo $t; curl_close($c);
|
07.11.2006, 09:46:01
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
AW: cURL Problem - Bitte um Hilfe
hallo benni,
leider klappts nicht.
hab das jetzt so eingebunden:
Code:
$c = curl_init();
curl_setopt($c, CURLOPT_URL, $url);
curl_setopt($c, CURLOPT_HEADER, 0);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
$t = curl_exec($c);
echo "c: $c <br>";
echo "t: $t";
curl_close($c);
wenn ich dann auf absenden gehe, bekomme ich das hier:
c: Resource id #1
t:
|
07.11.2006, 09:49:43
|
Member
|
|
Registriert seit: Oct 2006
Beiträge: 610
|
|
AW: cURL Problem - Bitte um Hilfe
Dann kanns dein Provider nicht, oder die Url die Du abrufen willst "schützt sich"
Bei mir geht das hier problemlos:
PHP-Code:
<?php $url="http://www.web.de"; $c = curl_init(); curl_setopt($c, CURLOPT_URL, $url); curl_setopt($c, CURLOPT_HEADER, 0); curl_setopt($c, CURLOPT_RETURNTRANSFER, true); $t = curl_exec($c); echo $t; curl_close($c); ?>
|
07.11.2006, 10:01:22
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
AW: cURL Problem - Bitte um Hilfe
hi benni,
ja mit web.de gehts bei mir auch..
was meinst du das mit "schützt sich" das ist ein interner server der im selben Netzbereich steht. nur das der server wo das script draufläuft eben als https zugriff hat und nicht einen normalen http
Geändert von Th_Heide (07.11.2006 um 10:13:34 Uhr)
|
07.11.2006, 10:40:49
|
Member
|
|
Registriert seit: Oct 2006
Beiträge: 610
|
|
AW: cURL Problem - Bitte um Hilfe
mach mal
curl_setopt($c, CURLOPT_HEADER, 1);
und schau ob der Server Dich redirecten will..
Vielleicht wird ein Cookie gesetzt oder ein bestimmter Request-Header erwartet.. Wenns ein interner Server ist sollte man ja nachvollziehen können was passiert..
Ansonsten mal Wireshark saugen ( http://www.wireshark.org/ ) und den Netzwerkverkehr loggen, wenn du die Seite mit dem Browser aufrufst, vielleicht bekommst du damit Hinweise warum es nicht klappt.
Geändert von BenniG. (07.11.2006 um 10:43:07 Uhr)
|
07.11.2006, 11:20:17
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
AW: cURL Problem - Bitte um Hilfe
hier das ergbniss:
curl_setopt($c, CURLOPT_HEADER, 1);
bringt auch das ergebniss:
c: Resource id #1
t:
|
07.11.2006, 12:26:02
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: cURL Problem - Bitte um Hilfe
Zitat:
Zitat von Th_Heide
hier das ergbniss:
curl_setopt($c, CURLOPT_HEADER, 1);
bringt auch das ergebniss:
c: Resource id #1
t:
|
1. $c interessiert keinen Toten. Interessant ist nur der Rückgabewert von curl_exec().
2. gestattet der Host überhaupt einen GET Request für Loginname und Paßwort?
- ein POST Request mit Curl sieht nämlich anders aus...
3. setzt der Host eventuell einen Cookie? Übermittelt er eine Session_id?
Wenn dabei:
PHP-Code:
...
curl_setopt($c, CURLOPT_HEADER, 1);
...
$t = curl_exec($c);
echo "t: $t";
überhaupt keine Ausgabe erfolgt, dann liegt ein grundsätzliches Problem vor. Normalerweise müßte der Host wenigstens "ein ganz klein wenig HTTP" von sich geben...
Was sagt curl_error ()?
PHP-Code:
echo curl_error ($c);
natürlich vor curl_close($c)
Geändert von meikel (†) (07.11.2006 um 12:32:31 Uhr)
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 22:15:01 Uhr.
|