Seite 1 von 1

PHP-Problem

Verfasst: 31.05.2007, 10:26
von ole1210
Moin moin,

stehe vor einem kleinen PHP-Problem. Folgender Code:
Code:

Code: Alles auswählen

<div id="content"> 
   <!-- ## Brotkrumen ## --> 
      <div> 
         <?php 
            echo getBreadCrump&#40;&#41;; 
         ?> 
      </div> 
   <!-- ## ENDE Brotkrumen ## --> 
<?php 
   ## INHALT DYNMAISCH ERZEUGEN ## 
      $content = $_GET&#91;"content"&#93;; 
      //wenn noch kein Link geklickt wurde, öffne die Datei 'startseite.php' 
      if&#40;!$content&#41; &#123; 
           include&#40;"startseite.php"&#41;; 
         exit; 
      &#125; 
      // Sicherheitsproblem unterbinden ************ 
      if &#40;strtolower&#40;substr&#40;$content,0,7&#41;&#41; == "http&#58;//" || 
          strtolower&#40;substr&#40;$content,0,8&#41;&#41; == "https&#58;//" || 
          strtolower&#40;substr&#40;$content,0,6&#41;&#41; == "ftp&#58;//"&#41;&#123; 
           include&#40;"startstartseite.php"&#41;; 
           exit; 
      &#125; 
      else if &#40;!file_exists&#40;$content&#41;&#41;&#123; 
           include&#40;"startstartseite.php"&#41;; 
           exit; 
      &#125; 

      //wenn $content einen Inhalt hat, öffne diesen 
      include&#40;$content&#41;; 
  ?> 
</div> 
<br> 
<!-- ## ENDE CONTENT ## --> 
</body> 
</html> 


Den oberen Teil habe ich mir einfach mal gespart, da dort keine Probleme auftauchen.

Beim ersten Aufruf der Seite soll "startseite.php" includiert werden. Funktioniert soweit einwandfrei. Nur wird das Ausführen des PHP-Codes nach dem "Exit" beendet. Daher fehlt das untere bisschen HTML-Code.

Wie kann ich das umgehen? den HTML-Code kann ich nicht in die "startseite.php" aufnehmen.

Viele Grüße

Ole

Verfasst:
von
Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Verfasst: 31.05.2007, 10:57
von Pompom
include_once() und kein exit ?

Verfasst: 31.05.2007, 11:00
von ole1210
Ich sach ja immer wieder...ich bin kein PHP-Held...

Danke!!!

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 31.05.2007, 13:17
von auftragslinker
oder einfach elseif statt else if ;-)

Verfasst: 31.05.2007, 14:01
von nachfrag
oder einfach elseif statt else if
Das macht glaube ich keinen Unterschied ;) ...
eher wenn du dein exit rausnimmst und die Bedingung danach auch mit einem "else" verknüpfst. Also statt

Code: Alles auswählen

if &#40;strtolower&#40;substr&#40;$content,0,7&#41;&#41; == "http&#58;//" || ...

Code: Alles auswählen

else if &#40;strtolower&#40;substr&#40;$content,0,7&#41;&#41; == "http&#58;//" || ...
dann ist nur eine Bedingung erfüllt und die Startseite wird nur einmal eingefügt, ohne dass dann abgebrochen wird.
... und wie gesagt, das "störende" exit raus ...

Grüße

EDIT: am Ende müsste noch ein "else" dazu:

Code: Alles auswählen

else include &#40;$content&#41;;

Re: PHP-Problem

Verfasst: 31.05.2007, 16:40
von Hasenhuf
Ich habe sowas zur Not auch schon so gelöst:

Code: Alles auswählen

...
      if&#40;!$content&#41; &#123; 
           include&#40;"startseite.php"&#41;; 
           ?>
           </div> 
           <br> 
           <!-- ## ENDE CONTENT ## --> 
           </body> 
           </html>
           <?php
         exit; 
      &#125; 
      // Sicherheitsproblem unterbinden ************ 
      ... 
      &#125; 
      else if &#40;!file_exists&#40;$content&#41;&#41;&#123; 
           ... 
      &#125; 

      //wenn $content einen Inhalt hat, öffne diesen 
      include&#40;$content&#41;; 
  ?> 
</div> 
<br> 
<!-- ## ENDE CONTENT ## --> 
</body> 
</html>