PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   bedingtes Include (https://www.php-resource.de/forum/php-developer-forum/85904-bedingtes-include.html)

Kropff 20-09-2007 16:56

indem du ein mehrdimensionales array aufbaust.

gruß
peter

cool_water_at 20-09-2007 17:28

hier ist mein Quelltext:

PHP-Code:


<?php
    
## LIFE ON AIR ARRAY für erlaubte Links ## 

    
    
$allowed_pages = array(); // ein Leeres Array erzeugen    
    
$allowed_pages['start']="start";
    
$allowed_pages['empfang']="empfang";
    
$allowed_pages['links']="links";
    
    
 
    include(
'header.php');
    
    
    if (isset(
$_GET['lifeonair']) && in_array($_GET['lifeonair'], $allowed_pages)) { 
        
    include(
$_GET['lifeonair'] . ".php");
    
## include $allowed_pages[$_GET['lifeonair']]; ##
    
    
}
    
    
    else {
        include(
"start.php");
    }

    
    
    include(
'sidebar.php');
    include(
'footer.php');
?>


für das Headerbild möchte ich nun eine Variable erstellen:

Zitat:

"$header_grafik"
PHP-Code:

$header_grafik['start']="images/header_start.jpg"
$header_grafik['empfang']="images/header_emfang.jpg"
$header_grafik['links']="images/header_emfang.jpg" 

an der Stelle wo ich das variable Bild laden möchte kommt dann folgender Quelltext - oder?

Zitat:

<img src="<?php $header_grafik ?>" width="500" height="60">
wie ich die beiden nun verknüpfen kann - da fehlt mir das Konzept.
mehrdimensionales Array hört sich gut an - aber ich weiß nich wie das auf den Fall umsetzen soll.

cool_water_at 20-09-2007 18:28

ich glaube ich hab etwas gefunden:

wie ich mein Problem angehen muss

PHP-Code:

$links=array();
$links['start']=array("includes/texte/start.php""bild.jpg");  



$include=$links[$_GET['content']][0]; 

$pic=$links[$_GET['content']][1]; 


Kropff 20-09-2007 19:25

also, geht doch. :) manchmal muss man nur ein wenig nachdenken. :) allerdings solltest nicht mit numerischen Indizes arbeiten, das wird bei größeren Arrays sehr unübersichtlich. mach es doch so:
PHP-Code:

$links=array();
$links['start']=array(path => "includes/texte/start.php"pic => "bild.jpg");  
$include=$links[$_GET['content']['path']; 
$pic=$links[$_GET['content']['pic']; 

btw: achte auf die eckigen klammern, da stimmt was nicht in deinem code.


gruß
peter

cool_water_at 20-09-2007 19:55

ich kann die
arrays also auch dann problemlos erweitern?

Kropff 20-09-2007 20:07

klar, schau dir mal hier den Punkt 3 letztes beispiel an. das kannst du bis zum erbrechen durchziehen. aber nciht weiter, irgend wann sollte das eine datenbank übernehmen :)

gruß
peter

tontechniker 20-09-2007 20:13

@Kropff: assoziative Arrays aber bitte richtig ... ;)
Code:

$links['start']=array("path" => "includes/texte/start.php", "pic" => "bild.jpg");

cool_water_at 20-09-2007 21:15

danke für die wertvollen Hinweise - wegen der mehrdimensionalen Arrays.

Das eröffnet mir ganz neue Möglichkeiten um den Quellcode schlank und übersichtlich zu halten.

ich werden Array in eine externe Datei verlagern

zb.
Zitat:

sites.inc.php
und dann verschiedene Variablen erstellen:

1) für seite zum includen
2) das title_pic
3) einen css_div bereich der sich ändern soll je nach Seiten gruppe
4) headline_grafik
5) meta daten - zb. den Titel der Webseite

cool_water_at 21-09-2007 15:10

ich habe versucht das Array in die Seite einzufügen leider passiert gar nichts.

PHP-Code:

                <?    
                    
                             
                    
if (!empty($_GET['content']) && !empty($links[$_GET['content']])) { // Erlaubte Seite
                        
$LIVE_SITE $links[$_GET['content']['path']];
                    }
                    
                    else { 
// Erstbesuch oder Injection-Versuch
                        
$LIVE_SITE $links[$_GET['start']['path']]; 
                    }  

                
?>


am Seitenanfang habe ich folgendes Zeile Code eingefügt:
include('sites.inc.php');

cool_water_at 17-06-2008 08:02

Array erweitern
 
Ich möchte an mein bestehtendes array folgendes anfügen

index.php?rendezvous=galerie?id=0

---> "?id=0"

brauche ich da ein weiteres Array?

PHP-Code:


    
// ARRAY mit LINKS
    
    
    
$links=array();
    
    
$links['start']=array(            
    
                                    
"meta_title"     => "News &amp; Termine"
                                    
"path"             => "news.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_jodie.jpg"
                                    
"header"         => $hl."header_termine_news.png"
                                                                                            );
                                                                                            
    
    
$links['kontakt']=array(            
    
                                    
"meta_title"     => "Kontakt"
                                    
"path"             => "kontakt.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_partner.jpg"
                                    
"header"         => $hl."header_kontakt.png"
                                                                                            ); 




Code in der Index Datei:
PHP-Code:


<?
    
    
require_once 'sites_index2.inc.php';
    
    if (!empty(
$_GET['rendezvous']) && !empty($links[$_GET['rendezvous']])) { // Erlaubte Seite
        
$LIVE_SITE $links[$_GET['rendezvous']];
    }
    
    else { 
// Erstbesuch oder Injection-Versuch
        
$LIVE_SITE $links['start'];
    }  
?>


TobiaZ 17-06-2008 15:48

Zitat:

Ich möchte an mein bestehtendes array folgendes anfügen

index.php?rendezvous=galerie?id=0

---> "?id=0"
Richtig wäre

index.php?rendezvous=galerie&id=0

Ob das deine Frage beantwortet. :dontknow:

cool_water_at 17-06-2008 16:09

okay
und wie muss ich die index datei ändern damit das was nach ID=
dahinter steht und des dem richtigen array eintrag zu ordnet wird?

onemorenerd 17-06-2008 16:33

Dein Script interessiert sich z.Z. überhaupt nicht für einen GET-Parameter namens ID. Das Array definiert die validen Werte für den Parameter rendezvous.

Wenn du also eine bestimmte Seite/Sektion aufrufen willst, solltest du rendezvous verwenden. Für rendezvous=galerie sehe ich allerdings noch keinen Arrayeintrag. Den musst du erstmal anlegen, nach dem Schema wie für start und kontakt.
Wenn du die Galerie aufrufen kannst, soll wohl per ID gesteuert werden, welche Galerie oder welches Bild angezeigt wird. Das hat dann mit dem Array aber nichts mehr zu tun, dazu musst du den Code im Galeriescript anpassen.

Wenn dir das alles zu kompliziert ist, suche dir lieber gleich jemanden, der dir dein Anliegen umsetzt. Dazu kannst du entweder im Projekthilfebereich posten und auf freiwillige Hilfe warten oder du schreibst ein Jobangebot und bezahlst jemanden dafür. Wahrscheinlich könntest du auch hier weiter herumprobieren, aber es ist ja sicherlich nicht das Ende der Fahnenstange. Du willst bestimmt noch mehr Kleinigkeiten ändern und das dürfte dir mit deinen Programmierfähigkeiten sehr schwer fallen. No offense.

cool_water_at 17-06-2008 16:43

dann bleibe ich wohl bei der wohl bei der alten methode und werde alle unterseiten ins array schreiben
- ich wollte eigentlich nur zur übersichtlichkeit einen weitern parmater id einführen für alle unterseiten.

sprich index.php?rendezvous=galerie
und dahinter &id=salzburg

sprich unter der adresse
index.php?rendezvous=galerie&id=salzburg

soll dann die Subpage von der Galerie mit der ID=salzburg sein.

unter index.php?rendezvous=galerie
wird jetzt quasi die Auswahlseite angezeigt mit der Auswahl zu den einzelnen galerien.



Mein skript besteht im moment aus zwei dateien - die index.php und sites.inc.php

sites.inc.php
PHP-Code:

<?
    $site
="index2.php";
    
$index="index.php";
    
    
$screen_css="css/individual_rdz.css";
    
    
$screen_css_basic="css/basic.css";
    
    
$screen_css_gallery="css/highslide.css";
    
    
$favicon="rdz.ico";
    
    
    
// Hintergrundbilder für die Subpage
    
$bg_sp="images/bg_sp/";
    
    
    
//Ueberschriften Pfad
    
$hl="images/header/";
    
    
    

    
    
// ARRAY mit LINKS
    
    
    
$links=array();
    
    
$links['start']=array(            
    
                                    
"meta_title"     => "News &amp; Termine"
                                    
"path"             => "news.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_jodie.jpg"
                                    
"header"         => $hl."header_termine_news.png"
                                                                                            );
                                                                                            
    
    
$links['kontakt']=array(            
    
                                    
"meta_title"     => "Kontakt"
                                    
"path"             => "kontakt.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_partner.jpg"
                                    
"header"         => $hl."header_kontakt.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['sponsoren']=array(            
    
                                    
"meta_title"     => "Sponsoren"
                                    
"path"             => "sponsoren.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_maria.jpg"
                                    
"header"         => $hl."header_sponsoren.png"
                                                                                            );
                                                                                            
    
    
$links['bonus']=array(            
    
                                    
"meta_title"     => "Bonus Features"
                                    
"path"             => "bonus.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_pathologe.jpg"
                                    
"header"         => $hl."header_bonus.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['galerie']=array(            
    
                                    
"meta_title"     => "Galerie"
                                    
"path"             => "galerie_auswahl.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_johanna.jpg"
                                    
"header"         => $hl."header_galerie.png"
                                                                                            );
    
    
    
    
$links['salzburg']=array(            
    
                                    
"meta_title"     => "Galerie"
                                    
"path"             => "galerie_salzburg_php.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_johanna.jpg"
                                    
"header"         => $hl."header_galerie.png"
                                                                                            );
    
                                                                                            
    
    
$links['trailer']=array(            
    
                                    
"meta_title"     => "Trailer"
                                    
"path"             => "trailer.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_daniel.jpg"
                                    
"header"         => $hl."header_trailer.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['cast']=array(            
    
                                    
"meta_title"     => "Cast &amp; Crew"
                                    
"path"             => "cast.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_jodie.jpg"
                                    
"header"         => $hl."header_cast_crew.png"
                                                                                            );
                                                                                            
    
    
$links['inhalt']=array(            
    
                                    
"meta_title"     => "Inhalt"
                                    
"path"             => "inhalt.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_matthias.jpg"
                                    
"header"         => $hl."header_inhalt.png"
                                                                                            );
                                                                                            
    
$links['impressum']=array(            
    
                                    
"meta_title"     => "Impressum"
                                    
"path"             => "impressum.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_impressum.jpg"
                                    
"header"         => $hl."header_impressum.png"
                                                                                            );
                                    
    
    
?>


INDEX2.php
PHP-Code:

<?
    
    
require_once 'sites_index2.inc.php';
    
    if (!empty(
$_GET['rendezvous']) && !empty($links[$_GET['rendezvous']])) { // Erlaubte Seite
        
$LIVE_SITE $links[$_GET['rendezvous']];
    }
    
    else { 
// Erstbesuch oder Injection-Versuch
        
$LIVE_SITE $links['start'];
    }  
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Rendezvous - Jeder Will Eins :: <?php echo $LIVE_SITE['meta_title']; ?></title>


<script type="text/javascript" src="highslide/highslide.js"></script>


<script type="text/javascript">    
    hs.graphicsDir = 'highslide/graphics/';
    hs.outlineType = 'rounded-white';
</script>


<link rel="shortcut icon" href="<?php echo $favicon?>">
<link href="<?php echo $screen_css_basic?>" rel="stylesheet" type="text/css" />
<link href="<?php echo $screen_css?>" rel="stylesheet" type="text/css" />
<link href="<?php echo $screen_css_gallery?>" rel="stylesheet" type="text/css" />
</head>

<body>
<!-- DIV CONTAINER - Subpage - Start -->
<div id="container_subpage">
    <div id="container_subpage_bg">
        <img src="<?php echo $LIVE_SITE['bg_sp_img']; ?>" />
    

    <!-- DIV NAVIGATION - Subpage - Start -->
    <div id="navigation_sp">
    
        
        <!-- DIV NAVIGATION LOGO - Subpage - Start -->
        <div id="navigation_logo_sp">
          <a href="<?php echo $index?>"><img src="images/subpage_logo.jpg" border="0" /></a> </div>
        <!-- DIV NAVIGATION LOGO- Subpage - Ende -->
        
        
        <!-- DIV NAVIGATION MENU - Subpage - Start -->
        <div id="navigation_menu_sp">
                        <?
                            
include('navigation_links.inc.php');
                        
?>
      </div>
        <!-- DIV NAVIGATION MENU- Subpage - Ende -->
    </div>
    <!-- DIV NAVIGATION - Subpage - Ende -->

    
    
    <!-- DIV CONTENT BEREICH - Subpage - Start -->
    <div id="content_main_sp">
    
    
        <!-- DIV CONTENT BEREICH HEAD - Subpage - Start -->
        <div id="content_head_sp">
            <img src="<?php echo $LIVE_SITE['header']; ?>" />        
        </div>
        <!-- DIV CONTENT BEREICH -HEAD Subpage - Ende -->
    
            
            
        <!-- DIV CONTENT BEREICH TEXT- Subpage - Start -->    
        <div id="content_main_text">
                  <?php
                    
include $LIVE_SITE['path'];
                
?> 
                <br  style="clear: both;" />
         </div>
        <!-- DIV CONTENT BEREICH TEXT- Subpage - Ende -->
    
        
    </div>
    <!-- DIV CONTENT BEREICH - Subpage - Ende -->
    



</div>
<!-- div container - background -->
<div id="sp_footer">
             <?
                
include('footer_links.inc.php');
            
?>
</div>

</div>
<!-- DIV CONTAINER - Subpage - Ende -->


    
</body>
</html>


cool_water_at 17-06-2008 17:18

bzg $_GET seiten aus dem array lesen
 
habe den Beitrag das Problem bei > Entwicklung > PHP Developer gepostet aber es passt wohl besser hier rein und darum gehts:
danke schon im Voraus!


ich möchte meine Navigation - mein Arrayabfrage ändern bzw. die get parameter:

sprich index.php?rendezvous=galerie
und dahinter &id=salzburg

sprich unter der adresse
index.php?rendezvous=galerie&id=salzburg

soll dann die Subpage von der Galerie mit der ID=salzburg sein.

unter index.php?rendezvous=galerie
wird jetzt quasi die Auswahlseite angezeigt mit der Auswahl zu den einzelnen galerien.



Mein skript besteht im moment aus zwei dateien - die index.php und sites.inc.php

sites.inc.php
PHP-Code:

<?
    $site
="index2.php";
    
$index="index.php";
    
    
$screen_css="css/individual_rdz.css";
    
    
$screen_css_basic="css/basic.css";
    
    
$screen_css_gallery="css/highslide.css";
    
    
$favicon="rdz.ico";
    
    
    
// Hintergrundbilder für die Subpage
    
$bg_sp="images/bg_sp/";
    
    
    
//Ueberschriften Pfad
    
$hl="images/header/";
    
    
    

    
    
// ARRAY mit LINKS
    
    
    
$links=array();
    
    
$links['start']=array(            
    
                                    
"meta_title"     => "News &amp; Termine"
                                    
"path"             => "news.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_jodie.jpg"
                                    
"header"         => $hl."header_termine_news.png"
                                                                                            );
                                                                                            
    
    
$links['kontakt']=array(            
    
                                    
"meta_title"     => "Kontakt"
                                    
"path"             => "kontakt.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_partner.jpg"
                                    
"header"         => $hl."header_kontakt.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['sponsoren']=array(            
    
                                    
"meta_title"     => "Sponsoren"
                                    
"path"             => "sponsoren.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_maria.jpg"
                                    
"header"         => $hl."header_sponsoren.png"
                                                                                            );
                                                                                            
    
    
$links['bonus']=array(            
    
                                    
"meta_title"     => "Bonus Features"
                                    
"path"             => "bonus.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_pathologe.jpg"
                                    
"header"         => $hl."header_bonus.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['galerie']=array(            
    
                                    
"meta_title"     => "Galerie"
                                    
"path"             => "galerie_auswahl.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_johanna.jpg"
                                    
"header"         => $hl."header_galerie.png"
                                                                                            );
    
    
    
    
$links['salzburg']=array(            
    
                                    
"meta_title"     => "Galerie"
                                    
"path"             => "galerie_salzburg_php.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_johanna.jpg"
                                    
"header"         => $hl."header_galerie.png"
                                                                                            );
    
                                                                                            
    
    
$links['trailer']=array(            
    
                                    
"meta_title"     => "Trailer"
                                    
"path"             => "trailer.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_daniel.jpg"
                                    
"header"         => $hl."header_trailer.png"
                                                                                            );
                                                                                            
                                                                                            
    
$links['cast']=array(            
    
                                    
"meta_title"     => "Cast &amp; Crew"
                                    
"path"             => "cast.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_jodie.jpg"
                                    
"header"         => $hl."header_cast_crew.png"
                                                                                            );
                                                                                            
    
    
$links['inhalt']=array(            
    
                                    
"meta_title"     => "Inhalt"
                                    
"path"             => "inhalt.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_matthias.jpg"
                                    
"header"         => $hl."header_inhalt.png"
                                                                                            );
                                                                                            
    
$links['impressum']=array(            
    
                                    
"meta_title"     => "Impressum"
                                    
"path"             => "impressum.php"
                                    
"bg_sp_img"     => $bg_sp."bg_sp_impressum.jpg"
                                    
"header"         => $hl."header_impressum.png"
                                                                                            );
                                    
    
    
?>


INDEX2.php
PHP-Code:

<?
    
    
require_once 'sites_index2.inc.php';
    
    if (!empty(
$_GET['rendezvous']) && !empty($links[$_GET['rendezvous']])) { // Erlaubte Seite
        
$LIVE_SITE $links[$_GET['rendezvous']];
    }
    
    else { 
// Erstbesuch oder Injection-Versuch
        
$LIVE_SITE $links['start'];
    }  
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Rendezvous - Jeder Will Eins :: <?php echo $LIVE_SITE['meta_title']; ?></title>


<script type="text/javascript" src="highslide/highslide.js"></script>


<script type="text/javascript">    
    hs.graphicsDir = 'highslide/graphics/';
    hs.outlineType = 'rounded-white';
</script>


<link rel="shortcut icon" href="<?php echo $favicon?>">
<link href="<?php echo $screen_css_basic?>" rel="stylesheet" type="text/css" />
<link href="<?php echo $screen_css?>" rel="stylesheet" type="text/css" />
<link href="<?php echo $screen_css_gallery?>" rel="stylesheet" type="text/css" />
</head>

<body>
<!-- DIV CONTAINER - Subpage - Start -->
<div id="container_subpage">
    <div id="container_subpage_bg">
        <img src="<?php echo $LIVE_SITE['bg_sp_img']; ?>" />
    

    <!-- DIV NAVIGATION - Subpage - Start -->
    <div id="navigation_sp">
    
        
        <!-- DIV NAVIGATION LOGO - Subpage - Start -->
        <div id="navigation_logo_sp">
          <a href="<?php echo $index?>"><img src="images/subpage_logo.jpg" border="0" /></a> </div>
        <!-- DIV NAVIGATION LOGO- Subpage - Ende -->
        
        
        <!-- DIV NAVIGATION MENU - Subpage - Start -->
        <div id="navigation_menu_sp">
                        <?
                            
include('navigation_links.inc.php');
                        
?>
      </div>
        <!-- DIV NAVIGATION MENU- Subpage - Ende -->
    </div>
    <!-- DIV NAVIGATION - Subpage - Ende -->

    
    
    <!-- DIV CONTENT BEREICH - Subpage - Start -->
    <div id="content_main_sp">
    
    
        <!-- DIV CONTENT BEREICH HEAD - Subpage - Start -->
        <div id="content_head_sp">
            <img src="<?php echo $LIVE_SITE['header']; ?>" />        
        </div>
        <!-- DIV CONTENT BEREICH -HEAD Subpage - Ende -->
    
            
            
        <!-- DIV CONTENT BEREICH TEXT- Subpage - Start -->    
        <div id="content_main_text">
                  <?php
                    
include $LIVE_SITE['path'];
                
?> 
                <br  style="clear: both;" />
         </div>
        <!-- DIV CONTENT BEREICH TEXT- Subpage - Ende -->
    
        
    </div>
    <!-- DIV CONTENT BEREICH - Subpage - Ende -->
    



</div>
<!-- div container - background -->
<div id="sp_footer">
             <?
                
include('footer_links.inc.php');
            
?>
</div>

</div>
<!-- DIV CONTAINER - Subpage - Ende -->


    
</body>
</html>



Alle Zeitangaben in WEZ +2. Es ist jetzt 17:04 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG