Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wieso Fatal error Class Auth not found?

Frage Entwicklung PHP

Mitglied: Jeeroy

Jeeroy (Level 1) - Jetzt verbinden

02.08.2011 um 10:37 Uhr, 5355 Aufrufe, 8 Kommentare

Hallo,
ich möchte mit PHP ein LoginScript machen, welches prüft ob die Anmeldedaten im LDAP korrekt sind.
Dazu habe ich mir ein Script aus meinem PHP Buch angeguckt, doch bekomme dabei den Fehler: Fatal error: Class 'Auth' not found

Ich benutze Xampp und habe dann mal geguckt und unter php\PEAR\Auth ist Auth schon vorhanden.

Ich muss ehrlich zugeben, dass ich nicht weiss, ob ich Auth nun woanders einfügen muss oder nicht. (Habe noch nie eine Applikation eingefügt,..)

Hier mein Script

01.
$options = array('host'     =>  '172.**.**.*, 
02.
                 'port'     =>  '389', 
03.
                 'base'     =>  'o=Hondax, 
04.
                 'userattr' =>  'uid'); 
05.
 
06.
 
07.
$auth = new Auth('LDAP', $options); 
08.
function pc_auth_ldap_sigin(){ 
09.
print<<<_HTML_ 
10.
    <table><tr> 
11.
    <td class="$textclass"
12.
    <form action="$_SERVER[PHP_SELF]" method="POST"
13.
    Benutzername:</td> 
14.
    <td><input type="text" name="username"></td></tr> 
15.
    <tr><td class="$textclass">Passwort:</td> 
16.
    <td><input type="password" name="password"></td></tr> 
17.
    <tr><td></td><td><br><input type="submit" value="login" name="submit"></td></tr> 
18.
    </form></table> 
19.
_HTML_; 
20.
21.
$auth = new Auth('LDAP', $options, 'pc_auth_ldap_sigin'); 
22.
$auth->start(); 
23.
 
24.
if ($auth->getAuth()){ 
25.
    // Inhalt, wenn eingeloggt ist... 
26.
} else
27.
    // Inhalt für anonyme Benutzer... 
28.
}
Hier die Fehlermeldung:

Fatal error: Class 'Auth' not found in D:\xampp\xampp\htdocs\hondax\hx_wcms\index.php on line 31

Zeile 31:
01.
$auth = new Auth('LDAP', $options);

Bitte um Hilfe,.. Danke
Mitglied: SlainteMhath
02.08.2011 um 11:02 Uhr
Moin,

ich hab mit PEAR Modulen zwar noch nicht viel gemacht, aber auch die werden in irgendweiner weise mit einem inlcude, require oder autoload referenziert werden wollen, oder?

lg,
Slainte
Bitte warten ..
Mitglied: Jeeroy
02.08.2011 um 11:54 Uhr
Wenn ich ehrlich bin, ich habe keine Ahnung und wüsste auch nicht was genau ich includen müsste.
Bitte warten ..
Mitglied: Midivirus
02.08.2011 um 12:03 Uhr
für den Export nach Excel, sieht das Paket zB so aus:

01.
	include 'Spreadsheet/Excel/Writer.php'
02.
	$excel = new Spreadsheet_Excel_Writer(); 
03.
	$excel->send('framework.plattform.'.$kunde.clearfunctionname($para['show']).'.xls'); 
04.
	$sheet =& $excel->addWorksheet(clearfunctionname($para['show']));
und in der Klasse selbst sieht der Anfang dann so aus:
01.
$dateipfad = $_SERVER['DOCUMENT_ROOT']."/".SUBSTR(SUBSTR($_SERVER['SCRIPT_NAME'],1,strlen($_SERVER['SCRIPT_NAME'])),0,(strpos(SUBSTR($_SERVER['SCRIPT_NAME'],1,strlen($_SERVER['SCRIPT_NAME'])), "/")+0)); 
02.
if(strrpos($dateipfad, "/") != (strlen($dateipfad)-1)) 
03.
	$dateipfad .= "/"
04.
 
05.
require_once 'PEAR.php'
06.
require_once $dateipfad.'/Spreadsheet/Excel/Writer/Workbook.php';
Also iwie müssen die schon miteinander verbunden werden.

Ist wie bei Frauen ^^
Midi
Bitte warten ..
Mitglied: Jeeroy
02.08.2011 um 12:19 Uhr
Hm,..

habe nun ein

01.
require_once 'Auth.php';
eingebaut und erhalte allerdings diese Fehlermeldung:

Deprecated: Assigning the return value of new by reference is deprecated in D:\xampp\xampp\php\PEAR\Auth.php on line 469

Strict Standards: Declaration of Auth_Container_LDAP::fetchData() should be compatible with that of Auth_Container::fetchData() in D:\xampp\xampp\php\PEAR\Auth\Container\LDAP.php on line 204

und stehe wieder doof da :P

PS: Danke für bisherige antworten.
Bitte warten ..
Mitglied: Midivirus
02.08.2011 um 13:00 Uhr
nun, dann such doch mal in Zeile 469?
Bitte warten ..
Mitglied: Jeeroy
02.08.2011 um 15:23 Uhr
Hab ich aber... nichts falsches aufgefallen:

Das ist Zeile 468:
01.
        $array = $this->_setV12OptionsToV13($array);
Zeile 469 ist leer.

Das ist der Block von Zeile 466 - 483:

01.
    function _parseOptions($array
02.
03.
        $array = $this->_setV12OptionsToV13($array); 
04.
     
05.
        foreach ($array as $key => $value) { 
06.
            if (array_key_exists($key, $this->options)) { 
07.
                if ($key == 'attributes') { 
08.
                    if (is_array($value)) { 
09.
                        $this->options[$key] = $value
10.
                    } else
11.
                        $this->options[$key] = explode(',', $value); 
12.
13.
                } else
14.
                    $this->options[$key] = $value
15.
16.
17.
18.
    }
Bitte warten ..
Mitglied: chr-fritz
04.08.2011 um 01:13 Uhr
Gehe ich richtig in der Annahme, dass du eine PHP Version >= 5.3 nutzt? Falls ja hast du hier deinen "Fehler". Es gibt leider noch viele der Pear Pakete welche für PHP4 geschrieben wurden und noch nicht in dem Maße an PHP 5.3 angepasst wurden, so dass keine Deprecated und Strict Warnings mehr ausgegeben werden.

Die Deprecated Warnings weisen auf Verwendung einer Funktion oder Schreibweise hin, welche als Veraltet angesehen wird und in einer der nächsten PHP-Versionen entfernt wird. Die Strict Warnings dagegen weisen auf gewisse Dinge hin, welche für einen Sauberen Wartbaren Quellcode vermieden werden sollen. HIerzu gehört z.B. eine Redefinition einer Funktion in einer Abgeleiteten Klasse welche eine andere Parameterliste besitzt.

Es sind keine Fehlermeldungen welche jetzt nicht dafür sorgen, dass deine Anwendung nicht läuft, allerdings kann es zu Problemen mit Updates auf eine neue PHP-Version geben. Daher kannst du die Fehlermeldungen im Betrieb mit der Funktion "error_reporting" ausblenden. Behalte dies aber immer im Hinterkopf.

Zum Abschluss noch: Für die Strict-Warning gibt es für die Klasse "Auth_Container_File" (Bei dir ist es die "Auth_Container_LDAP") bereits einen Bug-Report: http://pear.php.net/bugs/bug.php?id=17284
Bitte warten ..
Mitglied: Jeeroy
04.08.2011 um 06:15 Uhr
Hey Fritz,

ja du liegst richtig in der Annahme, dass ich mit PHP 5.3 arbeite.

Ich danke dir für deine ausführliche Erklärung.

Was du schreibst ist sehr einleuchtend und hat mir somit gut weitergeholfen.

Danke sehr!

Danke auch für alle anderen Beiträge.
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Windows 8
gelöst Active Directory Default User.v2 Profile - Windows 8.1 Apps Error (4)

Frage von adm2015 zum Thema Windows 8 ...

Hyper-V
Wieso werden Computer aus der Domäne "geworfen" ? (5)

Frage von Tastuser zum Thema Hyper-V ...

Windows Server
Daten löschen - Windows Error Reporting (WER) (2)

Frage von Otto1699 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...