[PHP] Fatal error: Call to undefined function

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Toni
  • Registratie: Februari 2001
  • Niet online
Ik ben bezig met yet-another-cms in PHP en MySQL te programmeren. De standaard functies die worden gebruikt (bijvoorbeeld om pagina headers te printen of database lijsten te genereren, etc.) heb ik geplaatst in een file 'functions.inc' Deze file wordt geincluded in een andere includefile, nl. 'config.inc' waarin alle standaard-variabelen worden gedefinieerd, en alle belangrijke includefiles worden aangeroepen.

Mijn testomgeving is een WinXP bak met daarop apache, php en mysql geinstalleerd. Hierop werkt alles prima. Maar wanneer ik het nu online zet op een linux-server (met apache,php&mysql) krijg ik opeens foutmeldingen dat de functies niet zijn gedefinieerd : Fatal error: Call to undefined function: print_header()

De file functions.inc waarin de functies staan wordt wel geincluded, dat heb ik al gecontroleerd door aan het begin van de file een <?php echo "blaat"; ?> te plaatsen, en dat doet het gewoon.

Waar zou het aan kunnen liggen? Aan die 'geneste' include structuur?

Thanx in advance.

We need more cowbell


Acties:
  • 0 Henk 'm!

  • FlashAddict
  • Registratie: Juni 2001
  • Laatst online: 22-08-2020
ik zou nooit een include file met de extensie .inc gebruiken, zo is het voor mensen van buitenaf mogelijk dat je PHP code kunnen lezen ... gebruik daarom altijd zopiets als inc_functions.php of iets dergelijks. of een underscore gebruiken voor elke file die geinclude word ... _functions.php

Acties:
  • 0 Henk 'm!

  • Foxl
  • Registratie: Juli 2002
  • Niet online
print_header is volgens mij niet echt een standaard functie. Hij zal wel ergens in je script worden gedeclareerd ofzo.. (of moeten worden...)

Check ook vooral even http://nl.php.net/print_header

[ Voor 6% gewijzigd door Foxl op 02-12-2002 10:33 ]

I'm really easy to get along with, once you people learn to worship me...


Acties:
  • 0 Henk 'm!

  • Toni
  • Registratie: Februari 2001
  • Niet online
de functie print_header is een eigen geschreven functie - geen standaard php functie inderdaad. Deze staat in de includefile functions.php (heb ik net veranderd..)

We need more cowbell


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

PatrickPietens:of een underscore gebruiken voor elke file die geinclude word ... _functions.php
Waarom zou een underscore wel wat uitmaken, dan :? De .php extensie lijkt mij vooralsnog zat.
Foxl:
print_header is volgens mij niet echt een standaard functie. Hij zal wel ergens in je script worden gedeclareerd ofzo.. (of moeten worden...)

Check ook vooral even http://nl.php.net/print_header
:Z
Toni:
De standaard functies die worden gebruikt (bijvoorbeeld om pagina headers te printen of database lijsten te genereren, etc.) heb ik geplaatst in een file 'functions.inc'
Een oud en wijs man zei ooit "Lees de draad alvoor je blaat" *


Toni: Probeer er zeker van te zijn dat je functie gedefinieerd _is_ nadat je include file is geinclude, door de functie "function_exists" aan te roepen. Wanneer deze false teruggeeft, zou ik checken of de functies wel gedefinieerd worden, wanneer je de pagina's "los" aanroept ( http://www.jouwdomain.com/file.inc.php ), en ook weer in het bestand zelf na te gaan of je functies wel gedefinieerd worden. Op die manier kom je er een beetje achter waar het mee te maken zou kunnen hebben.

Overigens hoop ik voor je dat je niet gewoon ergens een typo in je source hebt :+

* (c) willem169

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


Acties:
  • 0 Henk 'm!

Verwijderd

PatrickPietens schreef op 02 december 2002 @ 10:25:
ik zou nooit een include file met de extensie .inc gebruiken, zo is het voor mensen van buitenaf mogelijk dat je PHP code kunnen lezen ... gebruik daarom altijd zopiets als inc_functions.php of iets dergelijks. of een underscore gebruiken voor elke file die geinclude word ... _functions.php
je kan natuurlijk ook gewoon met een .htaccess ff .inc toevoegen zodat het als een phpfile geparsed wordt... :D
Pagina: 1