php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.06.2010, 19:54  
Erfahrener Benutzer
 
Registriert seit: 23.03.2010
Beiträge: 623
PHP-Kenntnisse:
Anfänger
ByStones befindet sich auf einem aufstrebenden Ast
Standard Zend Framework

EDIT: Wenn jemand ne Beispielanwendung kennt wo das ZF verwendet wir und wo kein include-path in der php.ini geändert werden darf, dann lad ich mir das gerne runter und schau es mir an.

Hallo,
ich versuch mich grad mit dem Zend Framwork, nur will das nicht so richtig klappen...
Mit dem Tutorial auf der offiziellen HP komm ich nicht weit, da die davon ausgehen dass ich in der php.ini den include Path ändern kann, was ich aber nicht kann.

Meine Ordnerstruktur:

Zend
application
----controllers
--------IndexController.php
----views
--------scripts
------------index
----------------index.phtml
-------helper
----configs
--------application.ini
----layouts
--------main.phtml
----models
files
----css
----images
----js
index.php
.htaccess

So weit so gut. Im Zend-Ordner ist das Zendframework mit allen Dateien

IndexController.php:
PHP-Code:
<?php
class IndexController extends Zend_Controller_Action
{

    public function 
init()
    {
        
//init Zeugs
    
}

    public function 
indexAction()
    {
        
$view $this->initView();
        
$view->ausgabe 'Test';
    }
}
application.ini:
Code:
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"

; Pfad zum Layout Script und dessen Name
resources.layout.layoutPath = APPLICATION_PATH "/layouts"
resources.layout.layout = "main"
index.phtml
PHP-Code:
<?php
echo $this->ausgabe;
?>
main.phtml
PHP-Code:
<?php echo $this->layout()->content?>
index.php
PHP-Code:
<?php
require_once 'Zend/Loader.php';

require_once 
'Zend/Loader/Autoloader.php';
$loader Zend_Loader_Autoloader::getInstance();


$fc Zend_Controller_Front::getInstance();

$fc->setControllerDirectory('application/controllers');
$fc->setParam('noViewRenderer'false);

$fc->dispatch();
.htaccess
Code:
RewriteEngine on
RewriteRule !\.(js|ico|jpg|png|css)$ index.php
Wenn ich nun die URL aufrufe dann Zeigt er mir auch brav meinen Text aus dem Controller an, aber wie genau funktioniert das mit dem Template ?
ich brauch ja sozusagen eine head.phtml und eine fooder.phtml wo das Zeug hinkommt ?

Kurz und knapp ich schnalls noch net so richtig und wär nice wenn ihr mir ein weniger "Starthilfe" geben könnte.

Bitte nicht auf das offizielle Tut. verweisen weil ich mir das angeguckt habt uns nicht geschnallt habt.

Grüße

EDIT: Wenn jemand ne Beispielanwendung kennt wo das ZF verwendet wir und wo kein include-path in der php.ini geändert werden darf, dann lad ich mir das gerne runter und schau es mir an.

Geändert von ByStones (08.06.2010 um 20:50 Uhr).
ByStones ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.06.2010, 21:19  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Du kannst den include_path auch im PHP Skript verändern dann brauchst du keinen direkten Zugriff zur php.ini. Allerdings muss das Ändern durch das PHP Skript auch erlaubt sein. Ohne den include_path zu ändern wirds mit dem Zend Framework wohl etwas schwierig, denn viele Dinge basieren auf dem autoloading was aber einen entsprechenden include_path voraussetzt.

Template nennt sich beim Zend Framework der View. Und da gibt es keine head und footer Dateien sondern eine komplette Layoutdatei in der eben das komplette Design steht. Dann kannst du an einer Stelle sagen "hier soll der Inhalt der einzelnen Actions kommen". Hierfür solltest du dich mal nach Zend_Layout umschauen.
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline  
Alt 08.06.2010, 21:27  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.576
PHP-Kenntnisse:
Fortgeschritten
mermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblick
Standard

Dieses Tutorial hat mir damals sehr geholfen: Tutorial: Getting Started with Zend Framework 1.10 – Rob Allen's DevNotes

(Den Datenbank-Part würde ich allerdings nicht als normativ ansehen. Das geht auch ganz anders.)

Views/Zend_Layout wird vor allem ab Seite 9 besprochen.
__________________
Homepage | W3Fools
mermshaus ist offline  
Alt 08.06.2010, 21:37  
Erfahrener Benutzer
 
Registriert seit: 23.03.2010
Beiträge: 623
PHP-Kenntnisse:
Anfänger
ByStones befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
set_include_path(get_include_path() . PATH_SEPARATOR $path); 
Wenn ich das auf den lokalen Webserver tu, in welches Verzeichnis am besten ?
Da das ganze ja über den webroot kommt, kann ich dann da einfach einen eigenen Ordner 'include' machen dort dann nen Unterordner 'Zend' wo dann die ganzen Dateien reinkommen ?

So weit so gut, wie siehts mit der application.ini/.htaccess... Da hab ich auch nun verschiedene Versionen im Inet gesehen welche is nun die richtige ?
Code:
RewriteEngine on
RewriteBase /
RewriteRule !\.(js|ico|txt|gif|jpg|png|css)$ index.php
Das da ? Die entsprechenden Endungen werden dann einfach erweitert.

Zu der Bootstrap.php + application.ini: Brauch ich die und was genau muss da drinnstehen ?
Weil bei meinem ersten Versuch bin ich auch ohne die ausgekommen ?

Grüße
ByStones ist offline  
Alt 08.06.2010, 21:46  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Lad dir das Beispiel aus dem Handbuch runter. Also das aus der Einleitung. Da siehst du alle Dateien, wie sie von der Ordnerstruktur zueinander gehören und was in welcher Datei stehen muss!

Ansonsten, die Rewrite Rule nimmst du am besten auch die die im Handbuch angegeben ist!

Bei allem anderem auch immer erst das Handbuch lesen.
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline  
Alt 08.06.2010, 22:15  
Erfahrener Benutzer
 
Registriert seit: 23.03.2010
Beiträge: 623
PHP-Kenntnisse:
Anfänger
ByStones befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Ein Terminal öffnen (in Windows, Start -> Run und anschließend cmd verwenden). Zum Verzeichnis in dem man das Projekt beginnen will navigieren. Anschließend den Pfad zum richtigen Skript verwenden und eines der folgenden ausführen:

1.
% zf create project quickstart
Da scheitert das ganze schon
Wenn ich in das Verzeichnis wechseln und den Befehl eingebe: Der Befehl % ist entweder falsch geschrieben oder nicht gefunden worden...

Edit: Wenn ich das % weglasse und den absoluten Pfad zu zf Angebe (C:\bla\bla\bla\zf create project quickstart) dann kommt: Befehl php.exe nicht gefunden oder falsch geschrieben

Geändert von ByStones (08.06.2010 um 22:20 Uhr).
ByStones ist offline  
Alt 08.06.2010, 22:30  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Dann lad dir das komplette Beispiel Skript runter. Du brauchst die Konsole nicht um die Dateien zu erstellen, es geht auch per Hand. Schau dir das Beispiel an da hast du alles wichtige aufgesetzt das kannst du nehmen und für dich anpassen.
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline  
Alt 08.06.2010, 22:43  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

Das % ist auch nicht als zeichen zum eigenben gemeint sondern symbolisiert wie oftmals # oder ähnliches eine shell/cmd und dass man das dort eingeben soll.

Um das zf-Scripte in der CMD zu nutzen brauchst du unter Windows erstmal ein in der shell funktionierendes php, also passende PATH-Erweiterung, etc, damit das script auch dein php-binary findet.
robo47 ist offline  
Alt 09.06.2010, 15:39  
Benutzer
 
Registriert seit: 25.05.2010
Beiträge: 59
PHP-Kenntnisse:
Fortgeschritten
gs93 befindet sich auf einem aufstrebenden Ast
Standard

Man kann auch einfach in der batch Datei selbst den Pfad zur php.exe angeben. Nicht sonderlich sauber, aber funktioniert einwandfrei.
MfG
__________________
gs93 ist offline  
Alt 09.06.2010, 16:07  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Kann man machen. Aber wozu?

Code:
set PATH=C:\whatever\xamp\php;%PATH%
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Video Streaming Server, Flash, Zend Framework fehlfarben Gewerblich 0 25.03.2010 16:26
Zend Webinare robo47 Off-Topic Diskussionen 0 16.03.2010 10:02
[Erledigt] Zend Framework Installation : Error 500 Puccini PHP Tipps 2010 2 10.02.2010 08:22
DRINGEND: Suche Zend Framework - Coder jens76 Beitragsarchiv 0 03.11.2009 11:28
Zend Framework + Smarty + Login foxtrot Beitragsarchiv 0 29.10.2009 11:13
[S] Zend Framework Coder ThisRockZ Beitragsarchiv 0 14.10.2009 13:14
Kohana Framework / CakePHP / Zend ramses PHP-Fortgeschrittene 6 29.09.2009 01:38
Zend Framework: Dekorator für HTMLTag um DijitElement. #EFEFEF PHP-Fortgeschrittene 2 30.07.2009 09:25
Entwickler für Zend Framework Applikation gesucht UdoW Beitragsarchiv 0 10.05.2009 13:19
Zend Framework Joe Off-Topic Diskussionen 4 04.05.2009 20:14
Suche Schüler o.ä. mit Zend Framework Erfahrung -> 200 Euro mrmojo Beitragsarchiv 3 10.01.2009 15:38
Zend Studio for Eclipse und Zend Framework KeKs0r PHP-Fortgeschrittene 5 15.12.2008 15:10
Lerne Grundlagen | Quellensammlung cycap PHP Einsteiger 0 12.11.2008 16:23
Zend Framework Melchior PHP-Fortgeschrittene 29 13.03.2008 21:12
Zend Framework 1.0 betterknower Trash 3 16.07.2007 16:33

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
der befehl \\php.exe\\ ist entweder falsch geschrieben oder konnte nicht gefunden werden., der befehl php.exe ist entweder falsch geschrieben oder konnte nicht gefunden werden, zend beispielanwendung, zend framework layout ändern, \der befehl \\php.exe\\ ist entweder falsch geschrieben oder konnte nicht gefunden werden.\, zend layout ändern, zend layout wechseln, zend der befehl \\php.exe\\ ist entweder falsch geschrieben oder konnte nicht gefunden werden., zend php.exe, zend ordnerstruktur, zend framework einsteiger, zend framework zf.bat der befehl php.exe ist entweder falsch geschrieben, der befehl \\.\\php.exe\\ ist entweder falsch geschrieben oder konnte nicht gefunden werden., der befehl \\php.exe\\ ist entweder falsch geschrieben, zendframework zf php.exe ist falsch geschrieben, zend zf.bat php.exe ist entweder, thisrockzz.exe, php.exe ist falsch geschrieben, der befehl php ist entweder falsch geschrieben oder konnte nicht gefunden werden cakephp, zend einsteiger

Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum