Top-Themen

Aktuelle Themen (A bis Z)

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?

Mitglied: Jeeroy

Jeeroy (Level 1) - Jetzt verbinden

02.08.2011 um 10:37 Uhr, 5517 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 ..
Ähnliche Inhalte
Exchange Server

Microsoft Download Center - Page not found

gelöst Frage von DemonixExchange Server8 Kommentare

Hallo zusammen, ich bin nicht seit ein paar tagen am Wundern was mit dem M$ Downloadportal los ist. Ich ...

Windows 8

DISM Abbild Mounten - Path not Found

Frage von Sunny89Windows 81 Kommentar

Hallo, ich habe gerade versucht mit DISM ein Image zu mounten, aber ich bin echt am verzweifeln. Ich bekomme ...

Netzwerkprotokolle

FTPS - Auth TLS - 502 Command not implemented

gelöst Frage von PronMasterNetzwerkprotokolle3 Kommentare

Hallo Zusammen, ich betreibe einen FTP Server . Auf diesem kann man sich nur über TLS anmelden. Aus dem ...

Windows Server

WSUS Synchronisierungsfehler HTTP-Status 404: Not Found

gelöst Frage von IngenieursWindows Server6 Kommentare

Hallo, ich bin immer noch dabei einen WSUS unter einem Server 2012 Datacenter aufzusetzen. Mittlerweile ist er mir gelungen ...

Neue Wissensbeiträge
Firewall
PfSense 2.5.0 benötigt doch kein AES-NI
Information von ChriBo vor 1 TagFirewall1 Kommentar

Hallo, Wie sich einige hier erinnern werden hat Jim Thompson in diesem Aritkel beschrieben, daß ab Version 2.5.0 ein ...

Internet
Copyright-Reform: Upload-Filter
Information von Frank vor 2 TagenInternet1 Kommentar

Hallo, viele Menschen reden aktuell von Upload-Filtern. Sie reden darüber, als wären es eine Selbstverständlichkeit, das Upload-Filter den Seitenbetreibern ...

Google Android

Blokada: Tracking und Werbung unter Android unterbinden

Information von AnkhMorpork vor 3 TagenGoogle Android1 Kommentar

In Ergänzung zu meinem vorherigen Beitrag: Blokada efficiently blocks ads, tracking and malware. It saves your data plan, makes ...

Google Android
Facebooks unsichtbare Datensammlung
Information von AnkhMorpork vor 3 TagenGoogle Android3 Kommentare

Rund 30 Prozent aller Apps im Play-Store nehmen Kontakt zu Facebook auf, sobald man sie startet. So erfährt der ...

Heiß diskutierte Inhalte
Linux Userverwaltung
LogIn Versuche beschränken auf EINEN Versuch
gelöst Frage von GarroshLinux Userverwaltung23 Kommentare

Folgendes Problem Ich habe einen dezidierten Server beim Hoster gemietet, installiert ist Ubuntu 18.04.2 LTS‬ und als Webinterface Plesk. ...

Backup
Wo installiert man Veeam bei SoHo?
Frage von EDVMan27Backup14 Kommentare

Hallo, nachdem ich die neue Veeam CE bei mir getestet habe, wollte ich es einmal bei einem Kunden testen. ...

Batch & Shell
Tasklist überprüfen
Frage von IleiesBatch & Shell10 Kommentare

Hallo zusammen, Wie kann ich in Batch überprüfen, ob gerade der Prozess "Skype.exe" ausgeführt wird? Also nicht so dass ...

Backup
Sicherung auf externe RDX Festplatten (oder auf USB 3.0) mit Veeam Agent for Microsoft
gelöst Frage von mike7050Backup9 Kommentare

Hallo, ich sichere immer auf RDX Wechselfestplatten mit der Accuguard Software. Gesichert wird eine Windows Server 2008 R2. Einmal ...