MVC Andere view
Ik heb deze tut gebruikt voor MVC:
http://www.phpit.net/article/simple-mvc-php5/
Hiermee kan je makkelijk html templates maken enzo. Gewoon mvc.
Nu wil ik graag vanuit een pagina x een formulier uitvoeren zodat er een excel bestand gemaakt word die d.m.v. een downloadvenster aangeboden word.
Voor het maken van het excel bestand gebruik ik dit:
http://www.codeplex.com/PHPExcel
Los van elkaar werkt alles goed, maar zodra ik PHPExcel in wil voegen in MVC, dan gaat het fout. Hij kan dan de PHPExcel bestanden niet meer includen.
Enig idee hoe ik dit werkend kan krijgen?
http://www.phpit.net/article/simple-mvc-php5/
Hiermee kan je makkelijk html templates maken enzo. Gewoon mvc.
Nu wil ik graag vanuit een pagina x een formulier uitvoeren zodat er een excel bestand gemaakt word die d.m.v. een downloadvenster aangeboden word.
Voor het maken van het excel bestand gebruik ik dit:
http://www.codeplex.com/PHPExcel
Los van elkaar werkt alles goed, maar zodra ik PHPExcel in wil voegen in MVC, dan gaat het fout. Hij kan dan de PHPExcel bestanden niet meer includen.
Enig idee hoe ik dit werkend kan krijgen?
Gesponsorde koppelingen:
Wat is de foutmelding dan?
Ik heb PHPExcel.php en de map PHPExcel in het mapje classes gezet. Vanuit de view start ik het excel bestand:
De foutmelding is dan:
Warning: require_once(PHPExcel/Cell/DataType.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\mvc\classes\PHPExcel\Cell.php on line 30
Fatal error: require_once() [function.require]: Failed opening required 'PHPExcel/Cell/DataType.php' (include_path='.;\xampp\php\pear\') in C:\xampp\htdocs\mvc\classes\PHPExcel\Cell.php on line 30
PHPExcel.php include hij dus wel, maar daarna gaat er iets fout.
De foutmelding is dan:
Warning: require_once(PHPExcel/Cell/DataType.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\mvc\classes\PHPExcel\Cell.php on line 30
Fatal error: require_once() [function.require]: Failed opening required 'PHPExcel/Cell/DataType.php' (include_path='.;\xampp\php\pear\') in C:\xampp\htdocs\mvc\classes\PHPExcel\Cell.php on line 30
PHPExcel.php include hij dus wel, maar daarna gaat er iets fout.
Hij kan cell.php dus niet vinden in die dir. Controleer eens of die daar zit.
Ja dat zit er wel in..
Ik denk dat ik snap hoe het zit.
Vanuit index.php wordt alles geladen, dat is dus de root.
als je de autoload van php gebruikt, dan verwijst hij naar de map classes, daarom kan hij PHPExcel.php wel vinden
maar dan, vanuit dat bestand worden bestanden uit submappen gelezen. en dan gaat hij niet meer zoeken in classes/. De bestanden bestaan wel, maar worden geniclude vanaf een andere plek dan hij verwacht. (Feitelijk bestaat het pad dus niet wat er wordt geinclude).
Als ik PHPExcel.php en de bijbehorende map uit de map classes haal en in de root zet EN ik include het bestand expliciet in de controller, dan gaat het goed. maar das niet meer volgens het mvc pattern.
Ik denk dat ik snap hoe het zit.
Vanuit index.php wordt alles geladen, dat is dus de root.
als je de autoload van php gebruikt, dan verwijst hij naar de map classes, daarom kan hij PHPExcel.php wel vinden
maar dan, vanuit dat bestand worden bestanden uit submappen gelezen. en dan gaat hij niet meer zoeken in classes/. De bestanden bestaan wel, maar worden geniclude vanaf een andere plek dan hij verwacht. (Feitelijk bestaat het pad dus niet wat er wordt geinclude).
Als ik PHPExcel.php en de bijbehorende map uit de map classes haal en in de root zet EN ik include het bestand expliciet in de controller, dan gaat het goed. maar das niet meer volgens het mvc pattern.
Bestandspaden hebben verder weinig te maken met "het" MVC pattern.
Maar probeer eens te spelen met set_include_path zodat al je autoload-dingen via je classes-mapje gaan.
Maar probeer eens te spelen met set_include_path zodat al je autoload-dingen via je classes-mapje gaan.
werkt!



