php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.04.2011, 21:54  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 141
PHP-Kenntnisse:
Anfänger
EG2011 ist zur Zeit noch ein unbeschriebenes Blatt
Standard Anzeige nur in Content-Element?

Servus an alle =)!

Bastel gerade an meiner ersten Page und habe folgende Frage:

Meine Page besteht aus einem Hintergrund-Bild, einer Menüleiste auf der linken Seite und einem Content-Element (ein einfaches <div>) in der Mitte des Bildschirms.

Nun möchte ich bei einem Klick in der Menüleiste nicht jedes Mal die gesamte Page neu aufbauen, sondern den jeweiligen Inhalt nur im dafür vorgesehenen Content-Element in der Mitte des Bildschirms anzeigen.

Wie realisiert der geübte Page-Entwickler so etwas?

Mein Content-Element ist 840px breit und 570px hoch. Ich möchte halt nur in diesem Bereich die Seiten anzeigen.

Vielen Dank fürs Aufschlauen =)!

Seb
EG2011 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 16.04.2011, 22:02  
Erfahrener Benutzer
 
Registriert seit: 25.05.2010
Beiträge: 852
PHP-Kenntnisse:
Anfänger
Trainmaster wird schon bald berühmt werden
Standard

Aufschlauen? Noch nie gehört.

Ein "geübter Page-Entwickler" würde solch ein Problem wahrscheinlich mithilfe von Ajax lösen. Das Javascript Framework jQuery wird dir eine gute Hilfestellung bieten.
Trainmaster ist offline   Mit Zitat antworten
Alt 16.04.2011, 22:03  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von EG2011 Beitrag anzeigen
Wie realisiert der geübte Page-Entwickler so etwas?
Gar nicht, weil er weiß, dass es wenig sinnvoll ist.

Man kann das zwar per AJAX machen - aber im großen und ganzen bastelt man damit erst mal die ganzen Nachteile, die Frames haben, nach.
(Und es so zu realisieren, dass es die nicht hat bzw. sie umschifft werden, erfordert einiges an Erfahrung im Umgang mit den beteiligten Techniken.)

Es ist nicht schlimm, die komplette Seite neu zu laden - das Seitengerüst wird idR. im Vergleich zum Inhalt sowieso wenig zu übertragenden Code in Anspruch nehmen, und externe Ressourcen wie Stylesheets, Scripte etc. werden auch gecached.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 16.04.2011, 22:16  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 141
PHP-Kenntnisse:
Anfänger
EG2011 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für die schnellen antworten =).

@Trainmaster
"Aufschlauen" wirste im Duden auch nicht finden =P.

@ChrisB
Okay, aber selbst wenn ich die ganze page reloade -> wie löst man das Thema, dass der neue Inhalt nur in einem bestimmten <div> angezeigt wird?
Ich als Laie würde es wahrscheinlich irgendwie über if-else-Abfragen machen, aber das ist alles andere als gemütlich....... =).
EG2011 ist offline   Mit Zitat antworten
Alt 16.04.2011, 23:39  
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:
dass der neue Inhalt nur in einem bestimmten <div> angezeigt wird?
Mit dieser schwammigen Anforderung kann niemand was anfangen.
__________________
--
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   Mit Zitat antworten
Alt 17.04.2011, 12:28  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 141
PHP-Kenntnisse:
Anfänger
EG2011 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Meine Frage ist ansich ganz einfach:

Ich habe ein <div>-Element in der Mitte des Bildschirms.
Nun möchte ich je nachdem was der User in der Menüleiste drückt in diesem <div> unterschiedliche Dinge anzeigen.
Muss ich dann auf Programmierseite in dem <div> tatsächlich Abfragen a la "wenn User den Butten A geklickt hat, zeige Kontext A, wenn B, zeige B" etc. machen?

Oder macht man es so, dass man wirklich die Page Xmal kopiert und das <div> immer unterschiedlich befüllt?
Dann hätte ich keine index.php die sich selber aufruft, sondern viele einzelne php-Dateien in meinem Ordner.

Jetzt etwas verständlicher worauf meine Frage abzielt?

Gruß, Seb
EG2011 ist offline   Mit Zitat antworten
Alt 17.04.2011, 12:34  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Copy&Paste ist nur für zu Guttenberg eine Lösung. Nicht für dich. Es gibt mehrere Varianten.

Variante 1)
Du baust dier eine header.php und eine footer.php, die jeweils den Rahmen bilden. In jeder einzelnen Seite hast du nun folgende Struktur:
PHP-Code:
require 'header.php';

// dein inhalt

require 'footer.php'
2) Du machst die von dir angesprochene index.php
PHP-Code:
$erlaubte_seiten = array('home''seite1''seite2');
if (isset(
$_GET['page']) && in_array($erlaubte_seiten$_GET['page'])) {
    require 
$_GET['page'].'.php';
}
else {
    require 
'home.php';

Variante 3: Ajax
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 17.04.2011, 12:37  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von EG2011 Beitrag anzeigen
Ich habe ein <div>-Element in der Mitte des Bildschirms.
Nun möchte ich je nachdem was der User in der Menüleiste drückt in diesem <div> unterschiedliche Dinge anzeigen.
Muss ich dann auf Programmierseite in dem <div> tatsächlich Abfragen a la "wenn User den Butten A geklickt hat, zeige Kontext A, wenn B, zeige B" etc. machen?
Jein.

Im Prinzip erst mal Ja.

In der Praxis aber eher Nein; da wird man einen Parameter übergeben, an Hand dem das Script selber den richtigen Inhalt „raussuchen“ kann - bspw. aus einer Datenbank, in der die Inhalte hinterlegt sind, oder auch in dem es eine Datei einbindet, in der nur jeweils der eine Inhalt hinterlegt ist.

Das Prinzip dürfte in so gut wie jedem Anfänger-Tutorial beschrieben sein - bspw. auch hier: http://tut.php-quake.net/de/layout.html#s2
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 17.04.2011, 12:50  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 141
PHP-Kenntnisse:
Anfänger
EG2011 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Vielen Dank euch beiden!

Sowohl mepeisens Punkt 2 als auch das Tut haben mir sehr geholfen!

Gruß, Seb
EG2011 ist offline   Mit Zitat antworten
Alt 17.04.2011, 17:53  
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:
PHP-Code:
$erlaubte_seiten = array('home''seite1''seite2');
if (isset(
$_GET['page']) && in_array($erlaubte_seiten$_GET['page'])) {
    require 
$_GET['page'].'.php';

Ich habe echt Probleme, solche Lösungen immer wieder empfohlen zu sehen. Bitte denkt dran, dass ein if schnell mal weggelassen ist. Ich schlage als Positivbeispiel folgendes vor:

PHP-Code:
$scripts = array(
  
'start' => 'home.php' 
  
'seite1' => 'page_1.php'
  
'seite2' => 'page_2.php'
);

$page 'home.php'

// wahlweise: 
// define ('DEFAULT_PAGE' , 'start');
// $page = $scripts[DEFAULT_PAGE];

if (isset($_GET['page']) && isset($scripts[$_GET['page']])) {
    
$page $scripts[$_GET['page']];


require 
$page
__________________
--
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   Mit Zitat antworten
Antwort


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] SimpleXML: Array enthalten, aber nur Zugriff auf erstes Element ??? Arne Drews PHP Einsteiger 18 31.01.2011 21:31
HTML-String auslesen bit4fox PHP Einsteiger 10 08.01.2011 16:33
Pixel addieren und Element somit neu positionieren schlägt fehl litterauspirna JavaScript, Ajax und mehr 9 29.10.2010 22:04
Content beim Hochladen eines Bildes im Array speichern! invidicult PHP Tipps 2010 6 04.10.2010 09:49
[Erledigt] Mit XPath im DOMDocument PHP5 und der foreach Schleife einen Element WERT hjw-kunstwerk PHP Tipps 2010 3 03.06.2010 00:07
Blätterfunktion / Menubar Content änderung Maxwill PHP Tipps 2010 2 27.04.2010 12:48
Auf ein einzelnes Element eine ausgewählten Datensatzes zugreifen fender PHP Tipps 2009 12 15.01.2010 16:18
Doppelten Content AllOnline PHP Tipps 2009 6 07.01.2010 20:01
Element erstellen, in Quelltext einfügen und auf dieses zugreifen können R4v3r JavaScript, Ajax und mehr 8 18.12.2009 11:33
Array Element vor und nach dem aktuellen Element ausgeben NetLook PHP Tipps 2006 2 09.05.2006 15:29
[JS/CSS] Element erst onclick sichtbar machn script.aculo.us StatischeEntladung HTML, Usability und Barrierefreiheit 1 06.04.2006 18:32
[Erledigt] Element mit Zeitschalter HTML, Usability und Barrierefreiheit 1 04.10.2005 11:44
padding streckt eltern element?! AliceD HTML, Usability und Barrierefreiheit 7 05.09.2005 14:03
[Erledigt] Sicherstellen von unkomprimiertem Content PHP-Fortgeschrittene 9 08.12.2004 12:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
duden aufschlauen, nur content neu aufbauen mit php, php skript in content element, php script in der mitte anzeigen

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