kostenloser Webspace werbefrei: lima-city


Problem: Finde Fehler nicht

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    Tachen, ich hab folgendes tag/problem">Problem:

    Bei diesem Script sollte eigentlich erst die ?berschrift der 1. Kategorie wiedergegeben werden, dann die Themen, dieser Kategorie. Dann die n?chste Kategorie und immer so weiter.

    Die 1. Kategorie und die Themen dieser Kategorie funktionieren noch, aber irgendwie wird danach nichts mehr ausgegeben.

    1. Kategorie: Test
    -Themen: Test
    Test
    2. Kategorie: Welcome!
    -Themen: Herzlich Willkommen!

    Das Script:

    <?

    $lastkategorie = "lalala";
    $lasttitel = "lalala";

    echo ('

    <tr><td width=400><u>Thema</u>
    <td width=170><u>letzter Beitrag</u>
    </td>

    ');


    $ergebnis = mysql_query(' SELECT * FROM `forum_posts` ORDER BY `kategorie` ASC ');

    while($row = mysql_fetch_array($ergebnis))
    {

    $id = $row['id'];
    $autor = $row['autor'];
    $datum = $row['datum'];
    $zeit = $row['zeit'];
    $kategorie = $row['kategorie'];
    $titel = $row['titel'];
    $inhalt = $row['inhalt'];


    if ( $lastkategorie != $kategorie ) {
    echo ('
    <tr><td colspan=2 bgcolor="#FFFFFF" align="left">
    <font color=#000000><b><a href="viewkategorie.php?kategorie='.$kategorie.'">'.$kategorie.'</a></b></font>
    ');
    }

    $lastkategorie = $kategorie;

    $ergebnis = mysql_query(' SELECT * FROM `forum_posts` WHERE `kategorie` = "'.$kategorie.'" ORDER BY `id` DESC ');

    while($row = mysql_fetch_array($ergebnis))
    {
    $titelnew = $row['titel'];
    $datumnew = $row['datum'];
    $zeitnew = $row['zeit'];
    $autornew = $row['autor'];

    if ( $lasttitel != $titelnew ) {

    echo ('
    <tr><td><a href="viewpost.php?titel='.$titelnew.'" target=inhalt>'.$titelnew.'</a>
    <td><font size=1>am '.$datumnew.' um '.$zeitnew.' von <a href="viewprofil.php?nick='.$autornew.'" target=inhalt>'.$autornew.'</a></font>
    </td>
    ');
    }

    $lasttitel = $titelnew;
    }
    }

    ?>
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. c*********c


    echo ('
    <tr><td><a href="viewpost.php?titel='.$titelnew.'" target=inhalt>'.$titelnew.'</a>
    <td><font size=1>am '.$datumnew.' um '.$zeitnew.' von <a href="viewprofil.php?nick='.$autornew.'" target=inhalt>'.$autornew.'</a></font>
    </td>
    ');


    echo "<tr><td><a href='viewpost.php?titel=$titelnew' target='inhalt'>$titelnew</a><td><font size='1'>am $datumnew um $zeitnew von <a href='viewprofil.php?nick=$autornew' target='inhalt'>$autornew</a></font>
    </td>";

    so sollte das funktionieren.....

  4. jupp....
    und zur Erkl?rung:
    in PHP also zwischen <? und ?>
    darf kein " gesetzt werden bei html tags
    also wenn das angezigt werden soll muss das in einen echo befehl gepackt werden:
    <?
    echo"plalalala";
    ?>
    da werden ja schon " gesetzt und wenn man die dann noch mal setzt denkt php das dort der echo befehl zu ende ist oder auch andere und deswegen wird dann ein Fehler angezeigt!!
  5. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    Das kann es doch ?berhaupt nicht sein, denn bei der 1. Kategorie und den 1. Themen klappt ja alles wunderbar,...


    Edit:

    Bei einer anderen Seite haben ich wohl nochmal den gleichen Fehler:
    Hier soll f?r jede Kategorie eine option erstellt werden. Wenn die Kategorie allerdings eine Option hat, soll dies nat?rlich nicht geschehen.

    Ergebnis:
    Es werden alle Kategorien wiedergegeben (Gesamt 5mal "Test").

    Es kann aber nicht an der echo-Funktion liegen, da diese ja richtig ausgef?hrt wird.
    <?php

    $lastkategorie = "lalala";

    $ergebnis = mysql_query('SELECT * FROM forum_posts ORDER BY kategorie ASC');

    while($row = mysql_fetch_array($ergebnis))
    {
    $kategorie = $row['kategorie'];

    if ( $lastkategorie != $kategorie ) {

    echo (' <option value='.$kategorie.'>'.$kategorie.'</option> ');
    }

    $lastkategorie = kategorie;
    }
    ?>
  6. p*****s

    Wie w?re es, wenn du mal die Fehlermeldung postest? Sonst kann dir keiner richtig helfen, weil keiner wei? was los ist.
    BTW: es hilft oft error_reporting(E_ALL); oben in den Code zu schreiben, damit auch wirklich alle Fehler eine Fehlermeldung ausgeben.
  7. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    Kennst du den Fall, dass es keine Fehlermeldung gibt?
    ,...
    Naja, bei der 2. Seite hat sich das Problem gel?st!

    Ich hatte nur $lastkategorie = kategorie;
    Also das $ vergessen :mad:

    Edit:

    Bei der 1. Seite bestehtdas Problem weiterhin
  8. p*****s

    Von wegen keine Fehlermeldung. Eigendlich m?sste sowas kommen:
    Notice: Use of undefined constant kategorie - assumed 'kategorie' in -url- on line x


    Wie man sieht, ist das eine Notice und solche Fehlermeldungen werden bei Standartphpeinstellungen nicht angezeigt, deshalb sollte man immer error_reporting(E_ALL); oben in sein Dokument schreiben, dann sieht man solche Tippfehler.
  9. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    F?r dich hab ich es jetzt eingef?gt, bei der 1. Seite kommt aber keine Fehlermeldung, der Fehler bei der 2. Seite wurde bereits behoben, dass hei?t da ist es sowieso egal, ob eine Fehlermeldung gekommen w?re,...
  10. p*****s

    Dann pasts ja, ich will ja nicht rummeckern und dich auch nicht anflamen, ich wollte nur nochmal unterstreichen, wie wichtig es vor allem in der Erstellungs- und Testphase ist, php so einzustellen, dass alle Fehlermeldungen angezeigt werden.
  11. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    Habt ihr denn alle keine Ideen?

    Also, ich hab es etwas umgeschrieben, und jetzt soll jede Kategorie einmal wiedergegeben werden mit dem Titel des letzten geschriebenen Beitrags der Kategorie:


    <?
    $lastkat = "lalala";


    $ergebnis = mysql_query(' SELECT * FROM `forum_posts` ORDER BY `kategorie` ASC ');

    while($row = mysql_fetch_array($ergebnis))
    {

    $id = $row['id'];
    $autor = $row['autor'];
    $datum = $row['datum'];
    $zeit = $row['zeit'];
    $kategorie = $row['kategorie'];
    $titel = $row['titel'];
    $inhalt = $row['inhalt'];

    if ( $lastkat == $kategorie )
    { }
    else{
    echo ('
    <tr><td colspan=2 bgcolor="#FFFFFF" align="left">
    <font color=#000000><b><a href="viewkategorie.php?kategorie='.$kategorie.'">'.$kategorie.'</a></b></font>
    ');
    $lastkat = $kategorie;
    }

    $ergebnis = mysql_query(' SELECT * FROM `forum_posts` WHERE `kategorie` = "'.$kategorie.'" ORDER BY `id` DESC LIMIT 1');

    while($row = mysql_fetch_array($ergebnis))
    {
    $titelnew = $row['titel'];
    $datumnew = $row['datum'];
    $zeitnew = $row['zeit'];
    $autornew = $row['autor'];
    $kategorienew = $row['kategorie'];

    echo ('
    <tr><td><a href="viewpost.php?titel='.$titelnew.'" target=inhalt>'.$titelnew.'</a>
    <td><font size=1>am '.$datumnew.' um '.$zeitnew.' von <a href="viewprofil.php?nick='.$autornew.'" target=inhalt>'.$autornew.'</a></font>
    <tr><td>
    ');
    }
    }
    ?>



    Ergebnis:


    Test

    Witzig - Witzig, was hier passiert,...
    am 20.02.2005 um 12:30 von Hannes



    Eigentlich sollte allerdings folgendes wiedergegeben werde:


    Test

    Witzig - Witzig, was hier passiert,...
    am 20.02.2005 um 12:30 von Hannes


    Welcome

    Herlich Willkommen
    am 19.02.2005 um 23:52 von Hannes



    EDIT 0-checka: Doppelpost gel?scht, Inhalt des zweiten Posts:
    Weiteres Script, indem es nicht funktioniert:


    $kategorieposten = "ja";

    $ergebnis = mysql_query('SELECT * FROM `forum_posts` WHERE `titel` = "'.$_GET['titel'].'" ORDER BY `id` DESC');


    while($row = mysql_fetch_array($ergebnis))
    {

    $id = $row['id'];
    $autor = $row['autor'];
    $datum = $row['datum'];
    $zeit = $row['zeit'];
    $kategorie = $row['kategorie'];
    $titel = $row['titel'];
    $inhalt = $row['inhalt'];


    $ergebnis = mysql_query(' SELECT * FROM `forum_users` WHERE `nick` = "'.$row['autor'].'" ');
    while($row = mysql_fetch_array($ergebnis))
    {
    $register = $row['register'];
    $rang = $row['rang'];
    $posts = $row['posts'];
    }

    if ($kategorieposten == "ja") {
    echo (' Kategorieposten ');
    $kategorieposten = "nein";
    }


    echo (' Post ');

    }

    echo (' Antworten ');
  12. In PHP m?ssen HTML tags in 'tag' stehen und nicht ind "tag"!!!!
  13. Autor dieses Themas

    hts

    hts hat kostenlosen Webspace.

    Nein, m?ssen sie nicht.

    Aber egal, denn das Problem wurde inzwischen gel?st,...
  14. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!