zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Template System und HTML5 mit Bootstrap - Problem!?

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 25.08.2012, 00:51
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 24.05.2012
Beiträge: 16
SourceSkyBoxer befindet sich auf einem aufstrebenden Ast
Standard Template System und HTML5 mit Bootstrap - Problem!?

Hallo Users,

habe ich komische Probleme mit Template System mit HTML 5 mit der Komponent von Bootstrap ( Klick hier )

Und eigene nette Tutorial habe ich im Internet gefunden. ( Klick hier )

PHP Skript: /Template.Class.php
PHP-Code:
<?php
class Template
{
    
/**
     * Der Ordner in dem sich die Templates befinden.
     *
     * @access    private
     * @var       string
     */
    
private $templateDir "templates/";

    
/**
     * Der Ordner in dem sich die Sprach-Dateien befinden.
     *
     * @access    private
     * @var       string
     */
    
private $languageDir "language/";

    
/**
     * Der linke Delimter für einen Standard-Platzhalter.
     *
     * @access    private
     * @var       string
     */
    
private $leftDelimiter '{$';

    
/**
     * Der rechte Delimter für einen Standard-Platzhalter.
     *
     * @access    private
     * @var       string
     */
    
private $rightDelimiter '}';

    
/**
     * Der linke Delimter für eine Funktion.
     *
     * @access    private
     * @var       string
     */
    
private $leftDelimiterF '{';

    
/**
     * Der rechte Delimter für eine Funktion.
     *
     * @access    private
     * @var       string
     */
    
private $rightDelimiterF '}';

    
/**
     * Der linke Delimter für ein Kommentar.
     * Sonderzeichen müssen escapt werden, weil der Delimter in einem regulärem
     * Ausdruck verwendet wird.
     *
     * @access    private
     * @var       string
     */
    
private $leftDelimiterC '\{\*';

    
/**
     * Der rechte Delimter für ein Kommentar.
     * Sonderzeichen müssen escapt werden, weil der Delimter in einem regulärem
     * Ausdruck verwendet wird.
     *
     * @access    private
     * @var       string
     */
    
private $rightDelimiterC '\*\}';

    
/**
     * Der linke Delimter für eine Sprachvariable
     * Sonderzeichen müssen escapt werden, weil der Delimter in einem regulärem
     * Ausdruck verwendet wird.
     *
     * @access    private
     * @var       string
     */
    
private $leftDelimiterL '\{L_';

    
/**
     * Der rechte Delimter für eine Sprachvariable
     * Sonderzeichen müssen escapt werden, weil der Delimter in einem regulärem
     * Ausdruck verwendet wird.
     *
     * @access    private
     * @var       string
     */
    
private $rightDelimiterL '\}';

    
/**
     * Der komplette Pfad der Templatedatei.
     *
     * @access    private
     * @var       string
     */
    
private $templateFile "";

    
/**
     * Der komplette Pfad der Sprachdatei.
     *
     * @access    private
     * @var       string
     */
    
private $languageFile "";

    
/**
     * Der Dateiname der Templatedatei.
     *
     * @access    private
     * @var       string
     */
    
private $templateName "";

    
/**
     * Der Inhalt des Templates.
     *
     * @access    private
     * @var       string
     */
    
private $template "";


    
/**
     * Die Pfade festlegen.
     *
     * @access    public
     */
    
public function __construct($tpl_dir ""$lang_dir "") {
        
// Template Ordner
        
if ( !empty($tpl_dir) ) {
            
$this->templateDir $tpl_dir;
        }

        
// Sprachdatei Ordner
        
if ( !empty($lang_dir) ) {
            
$this->languageDir $lang_dir;
        }
    }

    
/**
     * Eine Templatedatei öffnen.
     *
     * @access    public
     * @param     string $file Dateiname des Templates.
     * @uses      $templateName
     * @uses      $templateFile
     * @uses      $templateDir
     * @uses      parseFunctions()
     * @return    boolean
     */
    
public function load($file)    {
        
// Eigenschaften zuweisen
        
$this->templateName $file;
        
$this->templateFile $this->templateDir.$file;

        
// Wenn ein Dateiname übergeben wurde, versuchen, die Datei zu öffnen
        
if( !empty($this->templateFile) ) {
            if( 
file_exists($this->templateFile) ) {
                
$this->template file_get_contents($this->templateFile);
            } else {
                return 
false;
            }
        } else {
           return 
false;
        }

        
// Funktionen parsen
        
$this->parseFunctions();
    }

    
/**
     * Einen Standard-Platzhalter ersetzen.
     *
     * @access    public
     * @param     string $replace     Name des Platzhalters.
     * @param     string $replacement Der Text, mit dem der Platzhalter ersetzt
     *                                werden soll.
     * @uses      $leftDelimiter
     * @uses      $rightDelimiter
     * @uses      $template
     */
    
public function assign($replace$replacement) {
        
$this->template str_replace$this->leftDelimiter .$replace.$this->rightDelimiter,
                                       
$replacement$this->template );
    }

    
/**
     * Die Sprachdateien öffnen und Sprachvariablem im Template ersetzen.
     *
     * @access    public
     * @param     array $files Dateinamen der Sprachdateien.
     * @uses      $languageFiles
     * @uses      $languageDir
     * @uses      replaceLangVars()
     * @return    array
     */
    
public function loadLanguage($files) {
        
$this->languageFiles $files;

        
// Versuchen, alle Sprachdateien einzubinden
        
for( $i 0$i count$this->languageFiles ); $i++ ) {
            if ( !
file_exists$this->languageDir .$this->languageFiles[$i] ) ) {
                return 
false;
            } else {
                 include_once( 
$this->languageDir .$this->languageFiles[$i] );
                 
// Jetzt steht das Array $lang zur Verfügung
            
}
        }

        
// Die Sprachvariablen mit dem Text ersetzen
        
$this->replaceLangVars($lang);

        
// $lang zurückgeben, damit $lang auch im PHP-Code verwendet werden kann
        
return $lang;
    }

    
/**
     * Sprachvariablen im Template ersetzen.
     *
     * @access    private
     * @param     string $lang Die Sprachvariablen.
     * @uses      $template
     */
    
private function replaceLangVars($lang) {
        
$this->template preg_replace("/\{L_(.*)\}/isUe""\$lang[strtolower('\\1')]"$this->template);
    }

    
/**
     * Includes parsen und Kommentare aus dem Template entfernen.
     *
     * @access    private
     * @uses      $leftDelimiterF
     * @uses      $rightDelimiterF
     * @uses      $template
     * @uses      $leftDelimiterC
     * @uses      $rightDelimiterC
     */
    
private function parseFunctions() {
        
// Includes ersetzen ( {include file="..."} )
        
while( preg_match"/" .$this->leftDelimiterF ."include file=\"(.*)\.(.*)\""
                           
.$this->rightDelimiterF ."/isUe"$this->template) )
        {
            
$this->template preg_replace"/" .$this->leftDelimiterF ."include file=\"(.*)\.(.*)\""
                                            
.$this->rightDelimiterF."/isUe",
                                            
"file_get_contents(\$this->templateDir.'\\1'.'.'.'\\2')",
                                            
$this->template );
        }


        
// Kommentare löschen
        
$this->template preg_replace"/" .$this->leftDelimiterC ."(.*)" .$this->rightDelimiterC ."/isUe",
                                        
""$this->template );
    }

    
/**
     * Das "fertige Template" ausgeben.
     *
     * @access    public
     * @uses      $template
     */
    
public function display() {
        echo 
$this->template;
    }
}
?>
Und ich erstelle eigene HTML5 mit der Verteilung Bootstrap:
/templates/header_body.html:
HTML-Code:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>{$website_title}</title>
<link href="../distirbution/css/bootstrap.css" rel="stylesheet">
</head>

<body>
<div class="page-header">
{include file="navi_body.html"}
</div>
<script src="../distirbution/js/bootstrap.min.js"></script>
</body>
</html>
/templates/navi_body.html:
HTML-Code:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<link href="../distirbution/css/bootstrap.css" rel="stylesheet">
</head>
<body>
<div class="btn-group">
  <button class="btn">{L_HOME}</button>
  <button class="btn">{L_LINKS}</button>
  <button class="btn">{L_ABOUT}</button>
</div>
<script src="../distirbution/js/bootstrap.min.js"></script>
</body>
</html>
/templates/index_body.html
HTML-Code:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<link href="../distirbution/css/bootstrap.css" rel="stylesheet">
</head>
<body>
{include file="header_body.html"}
<h1>{L_START}</h1>
{L_THE_TIME_IS}: {$time}

<br /><br />

{$test}
<script src="../distirbution/js/bootstrap.min.js"></script>
</body>
</html>
/languages/de/lang_main.php:
PHP-Code:
<?php
$lang
['start']       = "Startseite";
$lang['the_time_is'] = "Die aktuelle Uhrzeit ist";
$lang['test']        = "Dies ist ein Test.";
$lang['home']         = "Start";
$lang['links']          = "Links";
$lang['about']         = "Über uns!";
?>
/index.php:
PHP-Code:
<?php
include("Template.class.php");

// Das Template laden
$tpl = new Template();
$tpl->load("index_body.html");

// Die Sprachdatei laden
$langs[] = "de/lang_main.php";
$lang $tpl->loadLanguage($langs);

// Platzhalter ersetzen
$tpl->assign"website_title""MyHomepage" );
$tpl->assign"time",          date("H:i") );

// Zugriff auf eine Sprachvariable
$tpl->assign"test",          $lang['test'] );

// Und die Seite anzeigen
$tpl->display();
?>
Und ich versuche mit Xampp Server. Ich habe schon mit Adobe Dreamweaver CS5.5 alles in die Ordnung mitgebracht. Wieso will CSS3 nicht mehr angezeigt werden? Und Javascript? Merkwürdig?
Schau mal Bild:


Ich habe deutlich genau gelesen, dass ich richtige Verbindung direkt
Bootstrap Verzeichnis als /distirbution vorgelegt habe.


Wie kann ich Problem lösen?

Vielen Dank für Antwort!
__________________
Entschuldigen Sie bitte, bin ich leider gehörlos! Vielen Dank für eurer Respekt!
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 26.08.2012, 16:52
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

CSS und JS-Datein falsch verlinkt?
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 27.08.2012, 11:41
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.008
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Code:
<link href="../distirbution/css/bootstrap.css" rel="stylesheet">
Bist du sicher, dass du distirbution meinst? Diesen Fehler hast du auch beim Javascript. Was kommt denn im Browser an?
__________________
:)
Mit Zitat antworten
  #4 (permalink)  
Alt 27.08.2012, 22:53
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 24.05.2012
Beiträge: 16
SourceSkyBoxer befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Thielo Beitrag anzeigen
CSS und JS-Datein falsch verlinkt?
Zitat:
Zitat von fox Beitrag anzeigen
Code:
<link href="../distirbution/css/bootstrap.css" rel="stylesheet">
Bist du sicher, dass du distirbution meinst? Diesen Fehler hast du auch beim Javascript. Was kommt denn im Browser an?
Ich habe schon richtig dargestellt. Merkwürdig kann Template-System direkt PHP nicht mit HTML5 unterstützen?

Gibt es möglich?

Ich würde euch geben, ob ihr meine Datei herunterladen wollt und meine Webseite testet, wenn meine Webseite nicht funktioniert.

Hier herunterladen!

Vielen Dank!
__________________
Entschuldigen Sie bitte, bin ich leider gehörlos! Vielen Dank für eurer Respekt!
Mit Zitat antworten
  #5 (permalink)  
Alt 27.08.2012, 23:52
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Zitat:
Zitat von SourceSkyBoxer Beitrag anzeigen
Ich habe schon richtig dargestellt. Merkwürdig kann Template-System direkt PHP nicht mit HTML5 unterstützen?

Gibt es möglich?

Ich würde euch geben, ob ihr meine Datei herunterladen wollt und meine Webseite testet, wenn meine Webseite nicht funktioniert.

Hier herunterladen!

Vielen Dank!
Ein Link kommt immer besser als eine Datei zum herunterladen.
Aber bevor du jetzt hier nen Link online stellen musst.. entferne mal das "../" bei der Einbindung von CSS und JS.

Dein Template liegt zwar woanders, aber es wird aus dem Hauptverzeichnis aufgerufen.
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #6 (permalink)  
Alt 28.08.2012, 00:08
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.008
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Als erstes solltest du dir vielleicht eine Browser-Erweiterung wie Firebug installieren oder einfach mal die Fehlerkonsole aufrufen. Dort werden auch Fehler angezeigt, wenn Dateien nicht gefunden werden, wenn ich das richtig in Erinnerung habe.
__________________
:)
Mit Zitat antworten
  #7 (permalink)  
Alt 30.08.2012, 22:30
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 24.05.2012
Beiträge: 16
SourceSkyBoxer befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Thielo Beitrag anzeigen
Ein Link kommt immer besser als eine Datei zum herunterladen.
Aber bevor du jetzt hier nen Link online stellen musst.. entferne mal das "../" bei der Einbindung von CSS und JS.

Dein Template liegt zwar woanders, aber es wird aus dem Hauptverzeichnis aufgerufen.
Oh mein Gott, du bist ja richtiger Exzellenter.

Ich wusste nicht, dass phpBB2/3 manchmal nicht direkt Ordner Style einhängen sollen.

Danke für Tipp! Meine schöne Webseite werde ich mehr ausüben und möchte ich gern nur HTML5- und CSS3- PHP Template Paket zum Beispiel. eigenes Blog-System hübsch darzustellen.

Schau mal einem Bild!


@fox, nein danke! Ich nehme standardmäßig mit Chrome und Opera Fehlerkonsole am besten.

Wofür soll ich Firebug installieren? Es tut mir leid. Ich bin kein Fan für Firefox Ich habe früher schon mit Firefox getestet, da finde ich leider sehr schade, dass Firefox bisschen langsamer als Chrome und Opera sei. Sei bitte mir nicht böse! Fuchse müssen rausgehen. Und die Pinguinen müssen hier kommen.

Vielen Dank für Hilfe. Jetzt bin ich klar gekommen und werde ich eigenes schönes Forum- und Blog-System basteln.

Edit: //
Wo soll ich dich bewerten / bedanken?

Liebe Grüße!
__________________
Entschuldigen Sie bitte, bin ich leider gehörlos! Vielen Dank für eurer Respekt!

Geändert von SourceSkyBoxer (31.08.2012 um 00:08 Uhr) Grund: Edit; //
Mit Zitat antworten
  #8 (permalink)  
Alt 31.08.2012, 00:20
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Zitat:
Zitat von SourceSkyBoxer Beitrag anzeigen
Oh mein Gott, du bist ja richtiger Exzellenter.
Würden das bloß mehr Leute so sehen

Zitat:
Zitat von SourceSkyBoxer Beitrag anzeigen
@fox, nein danke! Ich nehme standardmäßig mit Chrome und Opera Fehlerkonsole am besten.
Auch dort hättest du dann sehen können, das Dateien fehlerhaft verlinkt waren. Deshalb auch der Hinweis auf Firebug.
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #9 (permalink)  
Alt 31.08.2012, 08:12
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 24.05.2012
Beiträge: 16
SourceSkyBoxer befindet sich auf einem aufstrebenden Ast
Standard

@Thielo,

Danke für netter Erklärung! Ich weiß jetzt klar. Es wäre eine elegante Lösung des Template-Systems mit HTML5 und CSS3, das entwirft schöner als alter Version?

Wie sind Nachteule und Vorteile mit HTML5 und CSS3 direkt Template-System PHP 5.x?

Wir haben schon HTML4 und CSS2 mit Template-System genutzt. z.B. phpBB2/3 oder Joomla CMS usw..

Was passiert die Webseite mit HTML5 und CSS3 von morgen?

Zufall mit der Elegant!
Eine gute Frage, die können die Webentwickler endlich elegante und schöne Webseite verwalten/basteln, wie eigene Frau hat auch schöne Kleidung getragen Normalerweise tragen die Männer oft Geschickte mit Krawatten. Stimmt es etwa richtig?
__________________
Entschuldigen Sie bitte, bin ich leider gehörlos! Vielen Dank für eurer Respekt!
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 03.09.2012, 20:36
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 24.05.2012
Beiträge: 16
SourceSkyBoxer befindet sich auf einem aufstrebenden Ast
Lächeln

So wollte ich kleine Frage für der Seite beim Laden / Entladen wie phpBB3 Seite oder vBulletin Seite stellen:

Ich habe überhaupt nichts gefunden. Wenn ich eigene Seite dargestellt habe, dann würde ich genau wissen, wie funktioniert der Klick ( Link ) bei der Seite mit Template System und Link- oder Navigationssystem ( Menüleiste )?

Als ich kenne über eigene selbstgemachte Seite beim phpBB3-Verzeichnis. ( Customized page into phpBB3 )

Aber ich habe bisschen vergessen, was soll ich mit der Menü direkt header_body.html beachten? z.B.

index.php = Startseite
- Templates:
-- index_body.html
-- header_body.html
-- navi_body.html
-- home_body.html <- Standard für der Startseite gezeigt werden.
-- impress_body.html <- Impressum
-- *_body.html <- beispielerweise für eigene andere Seite soll man direkt navi_body.html angeklickt werden.

Muss ich div Tags einschreiben, um der Menü über div tags zu navigieren / drücken / ausgeführt zu sein?

Vielen Dank für Hilfe!
__________________
Entschuldigen Sie bitte, bin ich leider gehörlos! Vielen Dank für eurer Respekt!
Mit Zitat antworten
Sponsored Links
Antwort

Stichwörter
css3, html5, templatessystem

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit CSS in Joomla 1.5 noobilicius CSS 6 25.09.2008 21:24
Design CCS Problem bei Joomla Template KITN Alomaman CSS 4 07.01.2008 16:43
Joomla Template Problem tyrannski CSS 0 15.02.2007 16:06
Problem: IE versteckt Text & Feedback Herbi CSS 2 11.08.2006 15:39
Nicht valieder Code von Map24 sveniboy (X)HTML 7 06.11.2005 20:19


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:57 Uhr.