Teil von  SELFPHP
Letztes Update: 28.07.2006 09:40:36 


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

Benutzer-/Passwort-Authentifikation mit CURL




Systemvoraussetzung

  • Linux
  • Windows
  • PHP 4 >= 4.0.3
  • PHP 5
  • curlBibliothek

Datei(en)

curl_auth.php

Problem

Sie haben bereits im vorangegangenen Beispiel gesehen, wie Sie ein Formular mittels CURL-Funktionen automatisiert ausführen. Was ist aber, wenn dieses Formular hinter einem passwortgeschützten Bereich liegt? Wir werden in diesem Beispiel aufzeigen, wie Sie wiederum mit den CURL-Funktionen dieses kleine Problem lösen.

Lösung

Wir nehmen unsere bereits bekannte Funktion aus dem vorherigen Beispiel und erweitern sie für die Aufnahme eines Usernamens und eines Passworts für ein geschütztes Verzeichnis. Da wir bereits im vorherigen Kapitel den Programmcode beschrieben haben, werden wir hier nur die Neuerungen erklären.

function curlStart($domain, $var)
   @param   string   $domain
   @param   string   $var
   @param   string   $user
   @param   string   $pass
   @return   bool      $send

Der Funktion curlStart() werden zwei zusätzlich Variablen übermittelt, damit die CURL-Funktionen diese an die aufrufende Seite übermitteln können. Wir überprüfen innerhalb der Funktion, ob ein Username und Passwort übermittelt wurden (44). Falls ja, so setzen wir die weitere Option CURLOPT_USERPASSWD (45) und können jetzt die Abfrage senden.

34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
function curlStart($domain$var false$user false$pass false){
    
    
$fp curl_init($domain);
    
    
curl_setopt($fp,CURLOPT_TIMEOUT,10);
    
    
curl_setopt($fp,CURLOPT_FAILONERROR,1);
    
    
curl_setopt($fp,CURLOPT_RETURNTRANSFER,1);
    
    if(
$user != false || $pass != false) {
        
curl_setopt($fp,CURLOPT_USERPWD,$user.":".$pass);
    }
    
    if(
$var != false) {
        
curl_setopt($fp,CURLOPT_POST,1);
        
curl_setopt ($fpCURLOPT_POSTFIELDS$var); 
    }
    
    
curl_exec($fp);
    
    if(
curl_errno($fp) != 0) {
        
$send FALSE;
    } else {
        
$send TRUE;
    }
    
    
curl_close($fp);
    
    return 
$send;
    
}
Beispiel 10.6: curl_auth.php

Wir haben hier als Beispiel den Programmcode des vorangegangenen Beispiels herangezogen. So wäre es z. B. auch möglich, verschiedene Seiten mit unterschiedlichen Zugangsdaten anzusteuern. Sie müssen lediglich den Usernamen und das Passwort für jede Abfrage übermitteln.

67:
68:
69:
70:
71:
72:
73:
74:
75:
$formURL 'http://www.nureinbeispiel4.de/curl_formular.php';
$var 'vorname=Damir&name=Enseleit';
$user 'Damir';
$passwd 'Enseleit';

for(
$x=0;$x<50;$x++) {
    
$send curlStart($formURL,$var$user$passwd);

}
Beispiel 10.7: curl_auth.php


 

 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt