ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Probleme und Fragen / .php in Style anpassen?


Seite 1 von 1

Zweeper schrieb am 01.04.2005 um 18:51 Uhr

Hallo,

ich habe mir ein php Skript erstellt welches mir aus dem Portal alle Nachrichten der SHoutbox anzeigt. Soweit alles wunderbar.

Nur hab ich eine Frage, ich bekomm es einfach nicht gebacken das ganze in die Frame einzubinden so das die Seite eben einfach im Design ist.
Also ums anders zu formulieren wie alle anderen Seiten eingebunden sind. Mit Header usw..

Wie muss so eine .php Seite aussehen? kann mir da jemand mal eine Vorlage geben? Und brauch ich zu jeder .php Datei eine .html Datei?


MfG Zweeper

mille schrieb am 02.04.2005 um 13:25 Uhr

include "./inc/header.inc.php"; <--- nur das oder?

Müsstest dann eventuell noch bissl was aus dem Template kopieren - einfach mal schauen. Kannst doch bisschen rumprobieren bei php. ;)

Aber vielleicht irre ich mich auch und dein Server wird überlastet und alles brennt durch und du hast nachher ne Millionenklage von deinem Provider aufm Hals... :P

Zweeper schrieb am 02.04.2005 um 14:49 Uhr

die header.inc.php hab ich schon drinn.
Aber kein Design. Hab da mal die Templats wie in den anderen Dateien kopiert aber das funzt alles net.

mille schrieb am 02.04.2005 um 16:50 Uhr

Na ja, die entsprechenden Template noch mit reinnehmen und dann müsste es gehen - in der header.inc.php war keine Ausgabe, sondern es wurden nur die Variablen gesetzt, oder?!

Sorry, hab gerade keine Zeit da drin rumzuschnüffeln und is schon ewig her, dass ich am THWB was gemacht hab. :(

Zweeper schrieb am 02.04.2005 um 19:55 Uhr

hm ich check das nich. Egal was ich mache es funzt nicht.
Könnte mir da mal jemand eine Vorlage geben mit einem Abschnitt wo dann beliebiger Code rein kann?


MfG Zweeper

mille schrieb am 03.04.2005 um 01:10 Uhr

Nimm dir doch einfach mal die index.php und dann schnippel alles unnötige weg... ;)

Zweeper schrieb am 03.04.2005 um 14:02 Uhr

ok, ich hab folgendes gemacht:
Ich habe vor ein Shoutbox Archiv (Shoutbox aus dem Portal Hack) zu machen.
Klappt soweit alles wunderbar. Nur kann ich den Style einfach nicht einbinden.

Ich habe es nun so gemacht:

<?php

/* $Id: index.php,v 1.1.1.1 2002/10/28 19:13:47 pbaecher Exp $ */
/*
          ThWboard - PHP/MySQL Bulletin Board System
        ==============================================
            (c) 2000, 2001 by
               Paul Baecher         <paul@thewall.de>
               Felix Gonschorek   <funner@thewall.de>

          download the latest version:
            http://www.thwboard.de

          This  program is  free  software;  you can
          redistribute it and/or modify it under the
          terms of the GNU General Public License as
          published by the Free Software Foundation;
          either  version 2 of  the License,  or (at
          your option) any later version.

        ==============================================

*/

include "./inc/header.inc.php";

$Tframe = new Template("templates/" . $style['styletemplate'] . "/frame.html");

    $page = $_GET['page'];
    $limit = 10; //Hier gibst du die maximale Anzahl an//
    $result = mysql_query("select count(*) from tb_shoutbox");
    $total = mysql_result($result, 0, 0);
    $pager  = Pager::getPagerData($total, $limit, $page);
    $offset = $pager->offset;
    $limit  = $pager->limit;
    $page   = $pager->page;
    $query = "SELECT postid, posttime, posttext,postguestname FROM tb_shoutbox order by postid desc limit $offset, $limit";
    $result = mysql_query($query);
    //Ab hier kannst du die Ausgabe formatieren//
    while($row = mysql_fetch_array($result)){
        echo "ID: $row[0]<br>";
        echo "<b>Zeit:</b> ".date("d.m.Y H:i:s",$row[1])."<br>";
        echo "<b>Name:</b> $row[3]<br>";
        echo "<b>Text:</b> $row[2]<br>";
        echo "<hr>";
    }
    echo "<br><br><hr><hr><br>"; //Das etwas Abstand rein kommt//
    //Aber nur bis hier!
    if ($page == 1)
        echo "<";
    else
        echo "<a href=\"shout_archiv.php?page=" . ($page - 1) . "\"><</a>"; //Hier ist eine Angabe wie die Seite heißt
    for ($i = 1; $i <= $pager->numPages; $i++) {                            //Bei Änderung musst du die drei anpassen!
        echo " | ";
        if ($i == $pager->page)
            echo "$i";
        else
            echo "<a href=\"shout_archiv.php?page=$i\">$i</a>"; //Hier auch
    }
    if ($page == $pager->numPages)
        echo ">";
    else
        echo "<a href=\"shout_archiv.php?page=" . ($page + 1) . "\">></a>"; //Und hier auch nochmal

$navpath .= 'Shoutbox Archiv';
eval($Tframe->GetTemplate());


?>

Siehe den Fehler ganz unten:
http://www.zweeper.de/thwb/shout_archiv.php

kann mir jemand sagen was ich falsch mache?


MfG Zweeper

bdominik schrieb am 03.04.2005 um 14:59 Uhr

du darfst kein ECHO verwenden sondern mußt deine Ausgaben in die Variable CONTENT schreiben. Die ist nämlich in der frame.html definiert. Schau dir einfach mal das template-system an, dann ist es einfach zu verstehen.

Zweeper schrieb am 04.04.2005 um 16:43 Uhr

hm irgendwie bekomm ich das alleine nicht hin.
Wie genau mach ich das am besten mit der CONTENT Variable?
Ich hab mir das mal angeschaut aber es funzt nicht, ich bin langsam am verzweifeln :(

bdominik schrieb am 04.04.2005 um 16:46 Uhr

<?
include "./inc/header.inc.php";

$Tframe = new Template("templates/" . $style['styletemplate'] . "/frame.html");

$CONTENT = 'HIER INHALT BITTE<hr>'
$CONTENT .= 'UND NOCH MEHR';

eval($Tframe->GetTemplate());
?>

mille schrieb am 04.04.2005 um 17:33 Uhr

Wie funzt das eigentlich? Wird das hinten angehangen an die frame.html oder kommt es davor?

Bei den Variablen die da direkt drin stehen, isses mir klar - nur an welcher Stelle setzt CONTENT an oder war das ne Variable aus der frame.html? *wirr*


Sry, hab keine Ahnung von Templates... hab da einfach immer nur aus Unverständnis die vorhandenen Variablen missbraucht *schäm*

Zweeper schrieb am 04.04.2005 um 17:46 Uhr

ich verstehs auch nich *g*

mille schrieb am 05.04.2005 um 00:59 Uhr

echo "ID: $row[0]<br>";

wird zu

$CONTENT = "ID: $row[0]<br>";


einfach mal deine echos alle ersetzen - hab auch gerade geschaut und $CONTENT ist doch ne definierte Variable deren Posi in der frame.html festgelegt wird.

Zweeper schrieb am 05.04.2005 um 15:26 Uhr

ok habs gemacht:

<?
include "./inc/header.inc.php";

$Tframe = new Template("templates/" . $style['styletemplate'] . "/frame.html");

    $page = $_GET['page'];
    $limit = 10; //Hier gibst du die maximale Anzahl an//
    $result = mysql_query("select count(*) from tb_shoutbox");
    $total = mysql_result($result, 0, 0);
    $pager  = Pager::getPagerData($total, $limit, $page);
    $offset = $pager->offset;
    $limit  = $pager->limit;
    $page   = $pager->page;
    $query = "SELECT postid, posttime, posttext,postguestname FROM tb_shoutbox order by postid desc limit $offset, $limit";
    $result = mysql_query($query);
    //Ab hier kannst du die Ausgabe formatieren//
    while($row = mysql_fetch_array($result)){
        $content = "ID: $row[0]<br>";
        $content .= "<b>Zeit:</b> ".date("d.m.Y H:i:s",$row[1])."<br>";
        $content .= "<b>Name:</b> $row[3]<br>";
        $content .= "<b>Text:</b> $row[2]<br>";
        $content .= "<hr>";
    }
    $content .= "<br><br><hr><hr><br>"; //Das etwas Abstand rein kommt//
    //Aber nur bis hier!
    if ($page == 1)
        $content .= "<";
    else
        $content = "<a href=\"shout_archiv.php?page=" . ($page - 1) . "\"><</a>"; //Hier ist eine Angabe wie die Seite heißt
    for ($i = 1; $i <= $pager->numPages; $i++) {                            //Bei Änderung musst du die drei anpassen!
        $content .= " | ";
        if ($i == $pager->page)
            $content .= "$i";
        else
            $content .= "<a href=\"shout_archiv.php?page=$i\">$i</a>"; //Hier auch
    }
    if ($page == $pager->numPages)
        $content .= ">";
    else
        $content .= "<a href=\"shout_archiv.php?page=" . ($page + 1) . "\">></a>"; //Und hier auch nochmal

$navpath .= 'Shoutbox Archiv';
eval($Tframe->GetTemplate());
?>

aber jetzt zeigt er den Inhalt nicht mehr an:
http://www.zweeper.de/thwb/shout_archiv.php

hmmm

mille schrieb am 05.04.2005 um 15:59 Uhr

Mal ne dumme Frage: War php case-sensitiv bei den Variablen oder net? *g*

Wäre zumindest ne Erklärung, allerdings bin ich mir da net sicher, da ich immer alle Variablen klein schreibe. Falls es aber doch so ist, dann schreib CONTENT mal groß (schau mal in die frame.html und suche $CONTENT - dann verstehst du, was du da eigentlich machst und wo dieser Text dann landet ^^).

theDon schrieb am 05.04.2005 um 22:03 Uhr

mille postete
Mal ne dumme Frage: War php case-sensitiv bei den Variablen oder net? *g*

Ja, es ist Case-sensitiv.

mille schrieb am 05.04.2005 um 22:39 Uhr

Vielen Dank :)

Zweeper schrieb am 06.04.2005 um 06:41 Uhr

habs, es funzt nun auch. Ich poste den Code demnächst mal ins hack forum im Portal Hack.

Seite 1 von 1