Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
PHP Include
#1
Hi,

vorweg, ich hab den Thread hier ausprobiert, doch leider funktioniert das nicht so wie ich das will..

Auf der normalen Homepage klappt es,

PHP-Code:
<?php 
            $path 
$_SERVER['DOCUMENT_ROOT'];
            
$path .= "/include/test.php";
            include_once(
$path);
        
?>

doch im Forum hab ich das auch probiert, dort zerhaut der mir nur das Design,

mit den include was in den angegeben Thread steht, passiert bei mir irgendwie rein garnichts

Ich brauch den Code nur im Template "Startseite - Seitenkopf - Seitenfuß" also sollte die Index.php ausreichen(?)

Index.PHP
PHP-Code:
<?php
/**
 * MyBB 1.6
 * Copyright 2010 MyBB Group, All Rights Reserved
 *
 * Website: http://mybb.com
 * License: http://mybb.com/about/license
 *
 * $Id$
 */

define("IN_MYBB"1);
define('THIS_SCRIPT''index.php'); 

Ich hab es so eingefügt

PHP-Code:
<?php
ob_start
();
include(
"test.php");
$test ob_get_contents();
ob_end_clean(); 
/**
 * MyBB 1.6
 * Copyright 2010 MyBB Group, All Rights Reserved
 *
 * Website: http://mybb.com
 * License: http://mybb.com/about/license
 *
 * $Id$
 */

define("IN_MYBB"1);
define('THIS_SCRIPT''index.php'); 

Im Template Seitenkopf / Header hab ich die {$test} hinterlegt, doch angezeigt wird mir garnichts

Die test.php die eingefügt werden soll, befindet sich im Root Verzeichniss, obwohl ich die gern auch in einen extra Ordner ( /include ) reinsetzen möchte

Könnte sich bitte mir einer erbarmen? Smile
Zitieren
#2
Was steht denn bitte in der includierten Datei? Ohne den Code der Datei können wir nur schwer helfen.
Zitieren
#3
(12.02.2013, 21:55)Falkenauge Mihawk schrieb: Was steht denn bitte in der includierten Datei? Ohne den Code der Datei können wir nur schwer helfen.

Es ist ein Slider, mit JS

PHP-Code:
<!-- StartSlideshow -->
            <
div class="slider" align="center">
                <
div id="slideshow">
                    <
ul id="slides">
                        <
li>
                            <
a href="#">
                                <
img src="../version_2/images/slideshow/images/1.png" width="940" height="258" alt="Slider_1" />
                            </
a>
                        </
li>
                        <
li>
                            <
a href="#">
                                <
img src="../version_2/images/slideshow/images/2.png" width="940" height="258" alt="Slider_1" />
                            </
a>
                        </
li>
                    </
ul>
                </
div>
                <
div id="slider_repeat"></div>
                    <
div id="sph">
                        <
div class="slider_page_holder">
                            <
div id="slider_left"></div>
                            <
ul id="pagination" class="pagination">
                                <
li onclick="slideshow.pos(0)"></li>
                                <
li onclick="slideshow.pos(1)"></li>
                                <
li onclick="slideshow.pos(2)"></li>
                                <
li onclick="slideshow.pos(3)"></li>
                                <
li onclick="slideshow.pos(4)"></li>
                            </
ul>
                        <
div id="slider_right"></div>
                    </
div>
                </
div>
            </
div>
            <
script type="text/javascript">
                      var 
slideshow=new TINY.fader.fade('slideshow',{
                      
id:'slides',
                      
auto:10,
                      
resume:true,
                      
navid:'pagination',
                      
activeclass:'current',
                      
visible:true,
                      
position:0
                      
});
            </
script>
        <!-- 
EndSlideshow --> 

Wenn ich die normal im Header einfüge klappt alles, auch im Forum, nur mit den Include krieg ichs nicht hin
Zitieren
#4
Das ist doch reines HTML?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#5
Ups, muss das etwa mit echos etc gemacht werden?

Wenn ja, total verpeilt Sad
Zitieren
#6
Du könntest doch einfach den ganzen HTML-Code ins Template packen, oder?

edit: Was spricht dagegen, den Code ins Template zu drücken?

PS: Nein, aber du musst den Code wenn dann in eine Variable packen ($test). Dann muss das ganze ob_ (Output Buffering)-Zeug weg.
Zitieren
#7
Könntest du mir das genau erklären?

Ich könnte ja, doch will es nicht, da der Slider und paar andere Dinge aus der Navigation gleich von der Homepage sind und ich keine Lust hab die doppelt zu bearbeiten

Wenn ich die eine Datei bearbeite, wird auch gleichzeitig die von der Homepage bearbeitet
Zitieren
#8
Du musst das, was zurzeit in der includierten Datei steht, einer Variable zu weisen. In deinem Fall wohl:
PHP-Code:
$test "<!-- Start: Slideshow -->
            <div class=\"slider\" align=\"center\">
                <div id=\"slideshow\">
                    <ul id=\"slides\">
                        <li>
                            <a href=\"#\">
                                <img src=\"../version_2/images/slideshow/images/1.png\" width=\"940\" height=\"258\" alt=\"Slider_1\" />
                            </a>
                        </li>
                        <li>
                            <a href=\"#\">
                                <img src=\"../version_2/images/slideshow/images/2.png\" width=\"940\" height=\"258\" alt=\"Slider_1\" />
                            </a>
                        </li>
                    </ul>
                </div>
                <div id=\"slider_repeat\"></div>
                    <div id=\"sph\">
                        <div class=\"slider_page_holder\">
                            <div id=\"slider_left\"></div>
                            <ul id=\"pagination\" class=\"pagination\">
                                <li onclick=\"slideshow.pos(0)\"></li>
                                <li onclick=\"slideshow.pos(1)\"></li>
                                <li onclick=\"slideshow.pos(2)\"></li>
                                <li onclick=\"slideshow.pos(3)\"></li>
                                <li onclick=\"slideshow.pos(4)\"></li>
                            </ul>
                        <div id=\"slider_right\"></div>
                    </div>
                </div>
            </div>
            <script type=\"text/javascript\">
                      var slideshow=new TINY.fader.fade('slideshow',{
                      id:'slides',
                      auto:10,
                      resume:true,
                      navid:'pagination',
                      activeclass:'current',
                      visible:true,
                      position:0
                      });
            </script>
        <!-- End: Slideshow -->"


Jetzt hast du den HTML-Code der Variable $test zugewiesen (bzw. umgekehrt). Jetzt kannst du im Template {$test} vorausgesetzt. Du includierst die Datei mit dem HTML-Code in einer Datei, dass überall includiert wird (du willst ja den Code im Template "headersinclude", nehm ich mal an). Optimalerweise wäre das die global.php. In der global.php kannst du jetzt die Datei einbinden. Jedoch musst du die Datei vor dem eval(), dass das Template "headersinclude" abarbeitet, einbinden.
Zitieren
#9
(13.02.2013, 17:31)Falkenauge Mihawk schrieb: (du willst ja den Code im Template "headersinclude", nehm ich mal an

Nein,

Zitat:Ich brauch den Code nur im Template "Startseite - Seitenkopf - Seitenfuß" also sollte die Index.php ausreichen(?)

danke, werd es in paar Minuten austesten!

Also wie ich sehe muss man in der Variable auch vor ' etc. \ setzen, hoffe ich krieg das noch so hin wie vor 1 Jahr Smile
Zitieren
#10
(13.02.2013, 17:31)Falkenauge Mihawk schrieb: Jetzt hast du den HTML-Code der Variable $test zugewiesen (bzw. umgekehrt). Jetzt kannst du im Template {$test} vorausgesetzt. Du includierst die Datei mit dem HTML-Code in einer Datei, dass überall includiert wird (du willst ja den Code im Template "headersinclude", nehm ich mal an). Optimalerweise wäre das die global.php. In der global.php kannst du jetzt die Datei einbinden. Jedoch musst du die Datei vor dem eval(), dass das Template "headersinclude" abarbeitet, einbinden.


Und wie kann ich die Datei auf meiner normalen Homepage einbinden?

Auf meiner Homepage kommt wenn ich die einbinde mit Variable nicht ausser paar \ und wenn ich mit Variable einbinde zeigt der nur die variable an

selbst wenn es nun funktioniert im Forum, muss ich dennoch 2 mal bearbeiten wenn ich es nicht auf der Homepage angezeigt kriege
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Hilfeseiten > PHP Include Gerti 17 7.179 10.07.2020, 06:23
Letzter Beitrag: Gerti
  MyBB und Include majas 12 4.291 10.03.2014, 13:38
Letzter Beitrag: majas