PHP in Tabellenzelle

Diskutiere das Thema PHP in Tabellenzelle im Forum Web-Programmierung.

  1. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    Hallo!

    Ich bin gerade am tüffteln für die Website eines Freundes.
    http://www.philkan.at/mod/
    Und habs nun entlich geschafft in eine Zelle einen PHP Code einfließen zu lassen. Nur hab ich noch ein Problem.
    Das ist ein vorgefertigtes PHP Gästebuch, wenn man dort jetzt auf die Seite 2 will, springt er aus der Zelle raus. Das will ich aber nicht sondern ich will, das es genau so weitergeht.
    Wenn möglich ohne einen IFrame.
    Noch dazugesagt ich bin eine absolute Null im PHP Programmieren.

    Danke für eure Hilfe!!!

    Lg
     
  2. timbajr

    timbajr Mitglied

    Beiträge:
    582
    Zustimmungen:
    26
    Mitglied seit:
    22.04.2005
    bei mir kommt nen MySQL Error , deswegen kann ich dazu nix sagen ...
     
  3. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    So nun sollt es wieder funktionieren.
     
  4. DarkMoonWolf

    DarkMoonWolf Mitglied

    Beiträge:
    245
    Zustimmungen:
    5
    Mitglied seit:
    18.05.2006
    Das wird auch kaum möglich sein, der Link geht ja auf die book/index.php
    den link müßtest du ändenr unten im Menü und zwar so dass du in der Tabellenzelle dann das GB mit eben seite 2 aufrufst

    also etwa

    <a href='http://www.philkan.at/mod/wiedieersteseiteheisst.php?gbs=2'
    dann das mit äh __GET["gbs"] (wars glaub ich) in ne Variable speichern zb
    $gbpage = __GET["gbs"];
    bedenke dabei, wenn get nich gesetzt ist gbpage auf 1 zu setzen ;)
    und in der Zelle wo du das gb aufrufst dann
    <? include("/book/index.php?page="+$gbpage); ?>
    in etwa auf...das bewirkt dass du die entsprechende Seite kriegst

    hm is so in etwa, bin mit beim Get nich ganz sicher sollte aber in etwa so sein. evtl mal php.net fragen ;)
     
  5. timbajr

    timbajr Mitglied

    Beiträge:
    582
    Zustimmungen:
    26
    Mitglied seit:
    22.04.2005
    also das HTML ist ja schon mal schauderhaft ... zwei komplette <head> tags usw. Da wunderts mich net dass es gar net gescheit geht ...
     
  6. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    danke.
    Nur muss ich ehrlich gestehen das ich keine ahnung habe was du meinst!
     
  7. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    Ja werde ich darüber arbeiten, nur gehts mir jetzt in erster linie darum das mit dem php auf die reihe zu kriegen.
     
  8. maceis

    maceis Mitglied

    Beiträge:
    16.815
    Zustimmungen:
    608
    Mitglied seit:
    24.09.2003
    Wo ist der Code?
    Oder sollen wir den erraten? ;)

    [edit] Der html Quelltext ist ein absolutes Chaos.
    der Doctype kommt irgendwo in der Mitte etc. [/edit]
     
  9. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    Der Code vom Gästebuch oder von der HTML Seite?
     
  10. DarkMoonWolf

    DarkMoonWolf Mitglied

    Beiträge:
    245
    Zustimmungen:
    5
    Mitglied seit:
    18.05.2006
    ähm das war so interpretierbar, dass du wenn du in der tabellenzelle das gästebuch einbindest du dem auch mitteilst welche Seite du haben willst
    Dazu müssen natürlich die Seitenlinks (unten im GB) auch aktualisiert werden...aber ohne konkreten php code is das aucnn wenig kompliziert das mag sein, also auch den von der SeitenNummerAnzeige im GB weil du dann da den Link ändern musst
     
  11. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
  12. maceis

    maceis Mitglied

    Beiträge:
    16.815
    Zustimmungen:
    608
    Mitglied seit:
    24.09.2003
    Dann ist er auch zu lang für Helfer.
    Du solltest Deinen Code auf das absolute Minimum reduzieren, das erforderlich ist, um Dein Problem zu demonstrieren.
    Soviel Mühe solltest Du Dir schon machen ;).

    Das ist IMO die falsche Reihenfolge. Eine saubere Struktur ist eine der Voraussetzungen für sauberes Design.
     
  13. philkan

    philkan Thread Starter Mitglied

    Beiträge:
    1.275
    Zustimmungen:
    4
    Mitglied seit:
    04.05.2004
    So ich hoffe ich habe den Richtigen Teil rausgepieckt.

    Code:
     <title>".$properties['guestbook_title']."</title>
        </head>";
    
        if ($template['bgimage'] == "") {
            echo "<body bgcolor=\"".$template['bgcolor']."\">";
        }
    
        if ($template['bgimage'] != "") {
            echo "<body bgcolor=\"".$template['bgcolor']."\" background=\"".$template['bgimage']."\">";
        }
    
        if ($properties['guestbook_status']) {
            echo "<div align=\"".$template['tablealign']."\">".$ms[16]."<br /><b><a href=\"".$url."/insert.php";
    
            if (isset($get_lang)) {
                echo "?lang=".$_GET['lang']."";
            }
    
            echo "\" title=\"".$ms[17]."\">".$ms[17]."</a></b><br /><br />";
    
            if ($page > 1) {
                $page_minus = $page-1;
                echo " <a href=\"".$url."/index.php?page=".$page_minus."";
    
    
                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }
    
                echo "\"><img src=\"".$url."/images/links.gif\" alt=\"".$ms[6]."\" border=\"0\" /></a>";
            }
    
            if ($page_start > 1) {
                echo " <a href=\"".$url."/index.php?page=1";
    
                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }
    
                echo "\">1</a> ...";
            }
    
            for ($i = $page_start; $i <= $page_end ;$i++) {
                if ($i == $page) {
                    echo "<b>".$i."</b>";
                } else {
                    echo " <a href=\"".$url."/index.php?page=".$i."";
    
                    if ($get_lang) {
                        echo "&lang=".$_GET['lang']."";
                    }
    
                    echo "\">".$i."</a> ";
                }
            }
    
            if ($page_end < $pages_total) {
                echo " ... <a href=\"".$url."/index.php?page=".$pages_total."";
    
                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }
    
                echo "\">".$pages_total."</a>";
            }
    
            if ($page < $pages_total) {
                $page_plus = $page+1;
                echo " <a href=\"".$url."/index.php?page=".$page_plus."";
    
                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }
    
                echo "\"><img src=\"".$url."/images/rechts.gif\" alt=\"".$ms[18]."\" border=\"0\" /></a>";
            }
    
            echo "</div>
            <br />";
    
    
     
  14. maceis

    maceis Mitglied

    Beiträge:
    16.815
    Zustimmungen:
    608
    Mitglied seit:
    24.09.2003
    Ähm, ich dachte es wäre klar, dass Du lauffähigen Code posten sollst, denn man durch copy und paste übernehmen und testen kann oder zumindest (nein, eigentlich eher nicht) einen leicht überschaubaren, in sich geschlossenen Code-Abschnitt.

    Im Übrigen kann ich Dir nur empfehlen, Dich von dieser Spagetti-Code-Technik zu verabschieden. Du solltest Dich IMHO behmühen HTML und PHP so gut wie möglich zu trennen. Das erleichtert dann auch die Fehlersuche ungemein.
     
  15. Sovok

    Sovok Mitglied

    Beiträge:
    36
    Zustimmungen:
    0
    Mitglied seit:
    10.06.2005
    Mal ungeachtet des Tabellenproblems, solltest du unbedingt dein Design vom Inhalt trennen. So ist das ein garstiges Gestrüpp aus HTML und PHP, durch das du bald nicht mehr durchsteigst geschweige denn einfach erweitern kannst.

    Dabei brauchst du nichtmal ne dicke Template-Engine wie Smarty, es reicht schon ne kleine Klasse wie http://robsite.de/daten/temp/template.php.txt
    Genauer erklärt: http://www.sitepoint.com/print/beyond-template-engine
    Hat den Vorteil, dass du im Template direkt PHP benutzen kannst. Praktisch für foreach-Schleifen bei Listen oder so.
    Die ganze Logik (Daten laden, User-Request bearbeiten, ...) läuft dann in deinem Hauptscript ab, welches die Daten dann ins Template einfügt und ausgibt.
    Der nächste Schritt währe dann, auch noch die Zugriffe auf die Daten zu modularisieren und zu vereinfachen. Im Moment schreibst du die SQL-Queries ja bestimmt noch in dein Script, wo sie grad gebraucht werden. Mit guten DB-Funktionen oder gar einem relationalen Objektmapper sparst du dir ne Menge Arbeit. Aber das führt vllt. erstmal zu weit :>

    Mehr:
    http://de.wikipedia.org/wiki/Template_Engine
    http://de.wikipedia.org/wiki/Model_View_Controller
    http://de.wikipedia.org/wiki/Object-Relational-Mapping


    Dann noch kurz was zum Code: Du mischst auch hier wieder Design mit Struktur. Soll heissen, Formatanweisungen (Farbe, Font, ...) sind im HTML-Code. Das ist schlecht, weil unflexibel und arbeitsaufwändig, wenn du was ändern willst.
    Benutze für das Design (Farben, Größen, Positionen, ...) am besten nur CSS und überlass (X)HTML die Strukturierung.

    Mehr:
    http://jendryschik.de/wsdev/einfuehrung/css/styling
    http://www.andreas-kalt.de/webdesign/tutorials/webdesign-mit-webstandards
    http://www.lingo4u.de/article/checklist/
    http://alistapart.com/
    http://www.zeldman.com/dwws/
    http://webstandards.org/

    Und zum Thema, erm :kopfkratz. Guck ich mir morgen mal an :D

    Aber mein Tipp: Schreibs neu, wenn du die Zeit hast. In einem bestehendem Code, der noch dazu nich so dolle zu sein scheint, rumzustochern, macht keinen Spaß.
    Ein Gästebuch ist nicht übermäßig komplex. Eigentlich nur Posts anzeigen, das ganze auf mehreren Seiten, Posts erstellen und Spamschutz. Dabei lernst du auch gleich PHP. Wie gesagt, wenn du Zeit hast...

    Gutes PHP-Tutorial: http://tut.php-q.net/
    Gutes FAQ: http://www.php-faq.de/
    Gute Referenz: http://www.php.net/
     
Die Seite wird geladen...

MacUser.de weiterempfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...