php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.05.2008, 21:37  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Allgemeine Frage

Hallo
hätte da mal ne Frage

ich habe bei einem script im internet gesehen dass dort fast alles was man anklickt über die URL index.php?view=blabla läuft
zb view=newsletter
view=anmelden
view=hier

es gibt an die 50 befehle die so sind

wird dann die index.php nur dazu genutzt um je nach eingabe an eine andere datei weiterzuleiten? oder wie wird sowas gemacht?
robydog ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 21.05.2008, 21:44  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Es gibt verschiedene Ansätze. Verbreitet ist die Art, die Anwendung in Module zu unterteilen und je nach URL wird dann dieses oder jene Modul geladen.
Natürlich besteht die index.php nicht aus lauter if/elseif/else-Anweisungen.
Aber ich rate dir davon ab, da es recht komplex ist. Außerdem solltest du es wenn dann auch besser machen, als die Leute dieses Shops und URL-Rewriting einsetzen. Solche URLs sind nämlich weder benutzer- noch suchmaschinenfreundlich. Außerdem werden GET-Parameter in vielen Statistiken nicht mitgeloggt, sodass Webmaster, die sehen wollen, von wo überall ihre User herkommen, nur den Dateinamen index.php ohne ?view=blabla sieht und damit natürlich herzlich wenig anfangen können.
Manko10 ist offline  
Alt 21.05.2008, 21:47  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

ok das heisst besser ist

reale namen zu benutzen und direkt an url newsletter.php weiter zu leiten bei nem link
robydog ist offline  
Alt 21.05.2008, 21:48  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Oder wenigstens real aussehende Namen per URL-Rewriting in solchen Kauderwelch umwandeln. Nach außen hin sollte man von dieser internen Struktur nichts mitbekommen.
Manko10 ist offline  
Alt 21.05.2008, 21:51  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

okey dann werde ich das so machen
robydog ist offline  
Alt 22.05.2008, 23:49  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Zitat von Manko10 Beitrag anzeigen
Aber ich rate dir davon ab, da es recht komplex ist.
Diese Aussage kann ich nicht nachvollziehen. Nennt sich Froncontroller Pattern und ist absolut praktisch (selbst für kleine Seiten), um die Struktur der Anwendung zu abstrahieren.
nikosch ist offline  
Alt 22.05.2008, 23:55  
Dominik
Gast
 
Beiträge: n/a
Standard

mehr als das ist es nicht:

Code:
<? $view = $_GET['view']; if($view=="anmelden"){include("anmelden.php")} //etc... ?>
 
Alt 23.05.2008, 00:59  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Sinnvollerweise sollte man für komplexe Seiten statt einer If-Struktur ein Setting, bspw. ein Array {getParameter} => {include} verwenden. Du kannst auch einen zusätzlichen Error Eintrag machen und über array_key_exists () eine Art Fallback für fehlerhafte Parameter verwirklichen.

Hüten solltest Du Dich vor Konstrukten wie dem:
PHP-Code:
include ('pfad/' $_GET['view'] . '.php'); 
, weil hier über einen Parameter wie ../../../lib/geheim schnell eine große Sicherheitslücke entstehen kann.

btw: Benutze das nächste mal bitte einen aussagekräftigen Threadtitel.

Geändert von nikosch (23.05.2008 um 01:02 Uhr).
nikosch ist offline  
Alt 23.05.2008, 16:30  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

@nikosch77: lies den Satz mal weiter.
Es war nicht so gemeint, dass ich nichts davon halte, es war nur so gemeint, dass es für den Anfang ein wenig zu komplex wäre.
Aber gut, wenn robydog einen Front Controller haben will, kann er ihn haben.
Aber gib ihm bitte nich den Tipp, eine GET-Variable in in einem Include zu benutzen...
Manko10 ist offline  
Alt 23.05.2008, 19:24  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

wieso nicht so?
und wie dann?

und das ich das mit dem Front Pattern schnalle ist eh nicht anzunehmen hab kurz geschaut aber ist wohl nichts für mich
robydog 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
[Erledigt] MySql Frage: Problem mit einer etwas lomplexeren Abfrage tomtaz Datenbanken 5 24.06.2008 22:36
[Erledigt] Frage zur Variablenübergabe elwoodblues PHP Tipps 2008 13 30.05.2008 07:04
[Erledigt] Frage zu einer .txt Datei Potterfans PHP Tipps 2008 3 25.05.2008 20:39
[Erledigt] Fsockopen() Frage Auslesen von Daten Quedepi PHP Tipps 2008 9 23.05.2008 11:24
[Erledigt] Frage zu &quot;if isset ...&quot; (Leeren Wert nicht ausgeben) bursch PHP Tipps 2008 6 10.05.2008 21:03
OOP allgemeine frage zu classen notyyy PHP Tipps 2007 2 11.02.2007 22:07
Allgemeine Frage zum Thema Upload mit PHP pino PHP Tipps 2006 6 18.07.2006 21:51
kleine Frage zu "ORDER BY" [erledigt] PHP Tipps 2005-2 21 23.08.2005 15:18
Allgemeine RegEx Frage PHP Tipps 2005-2 10 05.07.2005 13:43
allgemeine Frage zu neuronalen Netzen auf PHP-Basis PHP Tipps 2005 6 20.05.2005 12:24
allgemeine frage | mysql und htaccess notyyy Datenbanken 13 18.05.2005 21:01
Performence Frage PHP-Fortgeschrittene 10 06.05.2005 19:00
Frage zu einem Editformular PHP Tipps 2005 3 25.04.2005 14:58
[Erledigt] Allgemeine Frage zu MySQL/SQL ;) Datenbanken 9 22.10.2004 14:15
[Erledigt] Frage! PHP Tipps 2004 4 27.07.2004 11:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:01 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