PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP für Fortgeschrittene und Experten (http://www.selfphp.de/forum/forumdisplay.php?f=13)
-   -   Fehler im Script? (http://www.selfphp.de/forum/showthread.php?t=1241)

|Coding 21.04.2002 04:39:38

Fehler im Script?
 
hi,

nun ja ich hab mittlerweile meinen error-handle zum laufen gebracht, aber da muss irgendwo ein fehler sein, denn das script soll bei einem fehler eine mail an mich schicken tut es auch nur nicht so wie ich will.

in der mail soll das gesendet sein:

welcher Fehler
PHP Version
REDIRECT_URL
HTTP_HOST
REMOTE_HOST
HTTP_REFERER

gesendet werden:

welcher Fehler
PHP Version
name des error-handle file
Welcher fehler

PHP-Code:

<?
$mailto = "mail@domain.de";
$mailto_name = "Name";
$sender = "ERROR";
$location = getenv("REDIRECT_URL");
$host = getenv("HTTP_HOST");
$remote = getenv("REMOTE_HOST");
$referer = getenv("HTTP_REFERER");

switch ($id)
{
    case 401:
        $msg = "Error 401: Zugang verweigert";
        break;
    
    case 403:
        $msg = "Error 403: Zugang verweigert";
        break;

    case 404:
        $msg = "Error 404: Datei nicht gefunden";
        break;
      
    case 500:
        $msg = "Error 500: Script ERROR";
        break;
      
    default:
        $msg = "Umbekannter Fehler";
        break;
}
mail("$mailto_name <$mailto>",$sender,"Error: $msgnFehler URL: $location nbei Besucher: $remote nReferer: $referer", "From: $sender <$mailto>n" .phpversion()); 
?>

Ich finde da keinen Fehler im Script, kann mir einer weiter helfen?

Dago 21.04.2002 18:24:59

Manche Server blocken die Funktion getenv().
Um die Informationen dennoch zu bekommen, kann man $HTTP_SERVER_VARS[] verwenden.

Warum $msg zwei mal kommt, versteh ich allerdings auch nicht.?

|Coding 21.04.2002 19:22:50

hi,

das mit der doppelten $msg ist kein fehler ich hatte es nur falsch gepostet:)

wie geht das den mit $HTTP_SERVER_VARS[]?

Dago 21.04.2002 19:27:12

$HTTP_SERVER_VARS[] ist ein Array aus den Elementen, die auch von getenv() zurückgegeben werden.

Also, wenn du getenv('REDIRECT_URL') wissen möchtest, nimmst du einfach
$HTTP_SERVER_VARS['REDIRECT_URL'].

|Coding 21.04.2002 19:32:45

axo ok ich werds mal probieren :)

|Coding 21.04.2002 19:43:48

hmm... *amkopfkartz* warum gayt das net??? :(

Dago 21.04.2002 19:50:22

Mach mal

echo $HTTP_SERVER_VARS['HTTP_HOST'];

kommt da ein Leerstring?

|Coding 21.04.2002 19:59:28

nein wenn ich mir das anzeigen lasse dann kommt das erhoffte. nur in der error-mail steh es nicht drin.

|Coding 21.04.2002 20:03:17

PHP-Code:

<?
$mailto = "mail@domain.de";
$mailto_name = "Name";
$sender = "ERROR";
$location = $HTTP_SERVER_VARS['REDIRECT_URL']; 
$host = $HTTP_SERVER_VARS['HTTP_HOST']; 
$remote = $HTTP_SERVER_VARS['REMOTE_HOST']; 
$referer = $HTTP_SERVER_VARS['HTTP_REFERER']; 

switch ($id)
{
    case 401:
        $msg = "Error 401: Zugang verweigert";
        break;
    
    case 403:
        $msg = "Error 403: Zugang verweigert";
        break;

    case 404:
        $msg = "Error 404: Datei nicht gefunden";
        break;
      
    case 500:
        $msg = "Error 500: Script ERROR";
        break;
      
    default:
        $msg = "Umbekannter Fehler";
        break;
}
mail("$mailto_name <$mailto>",$sender,"Error: $msgnFehler URL: $location nbei Besucher: $remote nReferer: $referer", "From: $sender <$mailto>n" .phpversion()); 
?>

also in dem script ist aber kein fehler bzw. ich wüste nicht wo ersteckt.

Dago 21.04.2002 20:12:48

Ich seh, außer dass $host fehlt, auch keine Fehler :-/


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:06:47 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.