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 PHP Exception arbeitet nicht korrekt ?!?

Mitglied: r.nahm

r.nahm (Level 1) - Jetzt verbinden

15.12.2013, aktualisiert 20:37 Uhr, 1762 Aufrufe, 7 Kommentare

Hallo Admins,

habe eine Klasse in der sich seltsames abspielt.

habe eine AuthException Klasse welche bei einem Aufruf aus der Klasse XYZ folgendes Resultat bringt: $e->getMessage() == null
rufe ich die AuthException aus dem namespace / auf funktioniert alles wunderbar. Method-Call ist korrekt nur hängt es irgendwie bei der message Variable.

EDIT: das wirklich skurile ist, die ausgabe von $e->getCode(); läuft in beiden fällen korrekt ab... also code wird immer übernommen.

EDIT2: Exceptions werden bei mir folgendermaßen abgefangen:

01.
<?php
02.
	function ExceptionHandler($e)
03.
	{
04.
		global $output;
05.
		if((get_class($e) == "OAuthResponse") OR (get_class($e) == "Response"))
06.
		{
07.
			$output->set($e->getData(), $e->getHeader());
08.
		}else{
09.
			$output->set(array("error" => array(
10.
						"message" 	=> $e->getMessage(),
11.
						"type"		=> get_class($e),
12.
						"code"		=> $e->getCode())));
13.
		}
14.
		$output->close();
15.
	}
16.
	set_exception_handler("ExceptionHandler");
17.

18.
?>
19.
EDIT3: selbes spiel bei einer normalen Exception (standard).

wer weis was da los is?

LG
Richi

EDIT: kommentare sind aktueller als das hier....


ES SIND DIE UMLAUTE!!!! wer kann helfen? :D
Mitglied: r.nahm
15.12.2013 um 18:19 Uhr
Zum besseren Verständnis, mehr code:

01.
	$classes = array(
02.
		'Output' => '/Output.php',
03.
		'AuthException' => '/AuthException.php',
04.
		'ExceptionHandler' => '/ExceptionHandler.php',
05.
		
06.
		...
07.

08.
	);
09.

10.
	foreach($classes as $key => $value){
11.
		require_once($libDir . $value);
12.
	}
13.
	$output = new Output();
01.
$server = new AuthServer();
01.
Class AuthServer extends AuthCommon
02.
{
03.

04.
	function __construct()
05.
	{
06.
		return $this->handleRequest();
07.
	}
08.

09.
	public function handleRequest()
10.
	{
11.

12.
		if(!isset($f['signature']))
13.
		{
14.
			throw new Exception("Anfrage enthält keine Signatur.", 123);
15.
		}
16.

17.
	}
18.
</php>
Bitte warten ..
Mitglied: r.nahm
15.12.2013 um 18:21 Uhr
$output gibt dann folgendes aus
01.
{"error":{"message":null,"type":"Exception","code":123}}
Bitte warten ..
Mitglied: r.nahm
15.12.2013 um 18:57 Uhr
Okay sorry,
alles Bullshit da oben:

die Exceptions lassen sich generell schonmal aus der AuthCommon Klasse aus werfen.

wenn ich über /index.php die /inc/init.php lade läuft alles.

hole ich mir die selbe /inc/init.php aus /auth/index.php heraus dann spackt $e->message() herum und ich weiß nicht woran es liegen könnte...

/index.php:
01.

02.
<?php
03.
	require_once("inc/init.php");
04.
//	throw new Response(array('test' => 'response'), array('X-Debug' => 'it works'));
05.
	$auth = new AuthCommon();
06.
	$auth->setParam(array('test' => 'abcd', 'test2' => '1234'));
07.
	$auth->setSignatureMethod('none');
08.
	//print_r($auth);
09.
?>
/auth/index.php:
01.
<?
02.
require_once('../inc/init.php');
03.
$server = new AuthServer();
04.

05.
	throw new AuthException('Anfrage enthält keine Signatur.', 123);
06.
$server->setConsumer(md5('1234567880'), md5('abcdefghi'));
07.
print_r($server->request);
08.
?>
09.
jetzt weis ich noch weniger woran was wie und wo liegen könnte...

*needhelp*
Bitte warten ..
Mitglied: r.nahm
15.12.2013 um 19:02 Uhr
01.
	// set_exception_handler("ExceptionHandler");
verrät mir dass irgendetwas mit dem Handler nicht läuft...da die ausgabe ohne Handler folgende ist:

01.
Fatal error: Uncaught exception 'AuthException' with message 'Anfrage enthält keine Signatur.' in ***/httpdocs/auth/index.php:5 Stack trace: #0 {main} thrown in ***/httpdocs/auth/index.php on line 5 
Siehe da, $msg ist da...
Bitte warten ..
Mitglied: r.nahm
15.12.2013 um 19:04 Uhr
selbes spiel bei einem Wurf aus der Klasse heraus:
01.
Fatal error: Uncaught exception 'AuthException' with message 'Anfrage enthält keine Signatur.' in ***/httpdocs/library/AuthServer.php:20 Stack trace: #0 ***/httpdocs/library/AuthServer.php(10): AuthServer->handleRequest() #1 ***/httpdocs/auth/index.php(3): AuthServer->__construct() #2 {main} thrown in ***/httpdocs/library/AuthServer.php on line 20 
Bitte warten ..
Mitglied: r.nahm
LÖSUNG 15.12.2013, aktualisiert 16.12.2013
das ist jetzt mal richtig KLEINLICH was da nicht stimmte...anscheinend hat eclipse bei dem String für diese eine Exception irgendetwas nicht korrekt kodiert....den throw auskommentieren, neue Zeile, exakt die selbe anweisung nochmal darunter schreiben und es läuft????

ich verstehe es nicht aber es funktioniert....

Problem /Symtom behoben aber hätte nun doch gerne eure Meinung zu diesem Phänomen...


LG
Bitte warten ..
Mitglied: 106543
16.12.2013 um 10:18 Uhr
Hi,

ich hab zwar wenig Ahnung von PHP, aber könntest du den Artikel bitte umbenennen in "Das Tagebuch des r.nahm" Äußerst unterhaltsam zu lesen. Wirklich :D

Mit freundlichen und leicht ironischen Grüßen
Exze
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Lpr script arbeitet nicht korrekt
gelöst Frage von isarc01Batch & Shell3 Kommentare

Hallo, habe zwei Drucker installiert. (Freigabename, Printername und LPR Name) identisch. laserprinter1 laserprinter2 1. Problem: die Ausgabe bzw. der ...

Windows Server

Zweiter DNS arbeitet (evtl.) nicht korrekt

Frage von HelgomatWindows Server17 Kommentare

Bei einem unserer Kunden fangen zwei Mitarbeiter Morgens früh um ca. 7 Uhr an zu arbeiten. Wenn diese Mitarbeiter ...

Visual Studio

Htmltextwriter stackoverflow exception

Frage von Herbrich19Visual Studio3 Kommentare

Hallo, Ich versuche gerade ein ASP.NET Servercontrol zu programmieren. Jedoch bekomme ich einen Speicherüberlauf. Hier mal der Code So, ...

Webbrowser

Hyperlink arbeitet falsch

Frage von 129914Webbrowser16 Kommentare

Hallo, Mein Betr.system ist Win.7 Ich habe eine PPT mit PowerPoint mit Office 2003 erstellt und als PPS abgespeichert. ...

Neue Wissensbeiträge
Windows Update

KB4517297 verfügbar, behebt Fehler in VB6 VBA VBScript

Information von sabines vor 1 StundeWindows Update

Das Update behebt mögliche Fehler in VB6, VBA und VBScript, die durch das Update KB4512486 vom August entstanden sind. ...

Viren und Trojaner

Staatstrojaner soll auch per Einbruch installiert werden können

Information von transocean vor 1 TagViren und Trojaner2 Kommentare

Moin, Bundesinnenminister Horst Seehofer will dem Verfassungsschutz Wohnungseinbrüche erlauben, um den geplanten Staatstrojaner zu installieren. Gruß Uwe

Windows 7
Win7 Update scheitert KB4512506
Information von infowars vor 2 TagenWindows 7

Falls jemand auch das Problem hat mit dem: Monatliches Sicherheitsqualitätsrollup für Windows 7 für x64-basierte-Systeme (KB4512506) Das scheint mit ...

Humor (lol)
Wenn hacken nach hinten los geht
Information von em-pie vor 3 TagenHumor (lol)5 Kommentare

Moin, weil heute Freitag ist, nachfolgender kurzer Artikel zum schmunzeln:) l+f: NULL ist ein notorischer Falschparker

Heiß diskutierte Inhalte
Switche und Hubs
Glasfaser-Anschluss Telekom muss verteilt werden
Frage von cansoniSwitche und Hubs29 Kommentare

Vorweg: Bin nur Anwender und kein Experte Die Situation: Der Vermieter stellt einen Glasfaseranschluss in der Wohnung bereit. Wir ...

Hyper-V
Bei Neuaufbau auf Core-Server setzen?
gelöst Frage von dertowaHyper-V19 Kommentare

Hallo zusammen, ich habe vor einigen Monaten die Verantwortung für eine EDV-Landschaft übernommen die seit Jahren von einem Dienstleister ...

Hyper-V
VMs von Hyper-V auf externer Festplatte
Frage von SnowbirdHyper-V18 Kommentare

Hallo, ich möchte gerne von VirtualBox auf Hyper-V umsteigen und würde auch gerne weiterhin meine VMs auf der externen ...

Festplatten, SSD, Raid
SSDs durch Lagerung ohne Strom nach 6 Monaten defekt?!?
gelöst Frage von GlobetrotterFestplatten, SSD, Raid16 Kommentare

Moin Gemeinde Ich hatte gerade nen Trauerspiel Habe hier etliche NAS-Geräte herumfahren welche ich mal auf die Seite gelegt ...