Toon posts:

[PHP] eigen foutmeldingen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb die dus gemaakt, een PHP script waar mensen dmv .htaccess heengaan als een bestand niet gevonden is.

Dit scriptje plaatst ook gelijk in een mySQL-db de tijd, datum, foutcode en de gezochte url.

Dat laatste is het probleem.
Die lukt niet.
Ik heb al een tijdje lopen zoeken op GoT, maar een werkende oplossing zie ik niet.

M'n .htaccess ziet er nu zo uit:
code:
1
2
3
4
5
6
7
8
9
ErrorDocument 400 errorhandling.php?foutcode=400
ErrorDocument 401 errorhandling.php?foutcode=401
ErrorDocument 402 errorhandling.php?foutcode=402
ErrorDocument 403 errorhandling.php?foutcode=403
ErrorDocument 404 errorhandling.php?foutcode=404&requested_url=$HTTP_SERVER_VARS['REQUEST_URI']
ErrorDocument 500 errorhandling.php?foutcode=500
ErrorDocument 501 errorhandling.php?foutcode=501
ErrorDocument 502 errorhandling.php?foutcode=502
ErrorDocument 503 errorhandling.php?foutcode=503

Zodra het doorgeven van de URL werkt, zet ik dit natuurlijk in alle regels...

Oja, het scriptje werkt gewoon goed, de foutcode wordt doorgegeven en het in de db plaatsen gaat ook goed.
Alleen die URL dus niet.

Verwijderd

laat je insert query eens zien

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 16:30

Janoz

Moderator Devschuur®

!litemod

In je .htaccess kun je geen gebruik maken van PHP natuurlijk. Het is geen php bestand dus ook de $HTTP_SERVER_VARS array is niet bekend. Je zult dus op een andere manier aan de opgevraagde pagina moeten komen. Mischien kun je het uitlezen mbv HTTP_REFERER oid in errorcodes.php.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Topicstarter
Hier is tie:
PHP:
1
2
3
4
5
6
7
<?
$sql_query = "INSERT INTO ".$sql_tablename." (tijd_datum, foutcode, url) VALUES ('".$datumtijd."', '".$foutcode."', '".$requested_url."')";

   mysql_connect($sql_dbhost, $sql_username, $sql_password);
   mysql_select_db($sql_dbname);
   mysql_query($sql_query);
?>

Verwijderd

Topicstarter
Op zondag 11 november 2001 21:53 schreef Janoz het volgende:
In je .htaccess kun je geen gebruik maken van PHP natuurlijk. Het is geen php bestand dus ook de $HTTP_SERVER_VARS array is niet bekend. Je zult dus op een andere manier aan de opgevraagde pagina moeten komen. Mischien kun je het uitlezen mbv HTTP_REFERER oid in errorcodes.php.
Heb ik geprobeerd. dit is dan het resultaat:
code:
1
/errorhandling?foutcode=404

Ik moet hem dus 1 keer eerder pakken -> in de .htaccess

Is idd wel stom dat ik PHP gebruikte in .htaccess |:(

Verwijderd

Topicstarter
Weet dan niemand hoe dit op te lossen is :? :?

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

mod_rewrite kan dat wel voor je.

onderdeel van Apache, is vrij pittig maar wel heel leuk :)

Klaar voor een nieuwe uitdaging.


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

neuh, je hoeft die servervars helemaal niet door te geven aan je PHP document, want die blijven (dacht ik) gewoon leven.

probeer eens in je errordocument.php te kijken welke globals er allemaal bestaan:
PHP:
1
2
3
<?
echo var_dump ( $GLOBALS );
?>

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1