Ankündigung

Einklappen
Keine Ankündigung bisher.

Vor - Blätterfunction, bleibt ohne Wirkung

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Vor - Blätterfunction, bleibt ohne Wirkung

    Hallo,

    habe eine Frage zu folgendem Code:
    PHP-Code:
    <?php
    include('connect.php');
    $limit 4;

    @
    mysql_connect($host,$user,$password)
       or die(
    "Abbruch: Verbindung zu '$host'"
             
    ." konnte nicht hergestellt werden.");
    @
    mysql_select_db($database)
       or die(
    "Abbruch: Datenbank '$database' konnte nicht"
             
    ." selektiert werden.

    MySQL sagt: "
    .mysql_error());

    // Feststellen der Anzahl der verfügbaren Datensätze.
    $resultID = @mysql_query("SELECT COUNT(id) FROM ".$table);
    $total    = @mysql_result($resultID,0);

    // Ggf. $start korrigieren (falls Parameter in
    // der URL manipuliert wurde)
    $start    = ($start >= $total) ? $total $limit $start;

    // Datenbankabfrage ausführen.
    $query    "SELECT id,antwort FROM ".$table
               
    ." LIMIT ".$start.",".$limit;
    $resultID = @mysql_query($query);

    // Ergebnisse lesen und an den Client ausgeben
    while ($data mysql_fetch_array($resultID))
    {
      echo 
    $data["id"].": ".$data["antwort"]."
    "
    ;
    }

    if (
    $start 0)
    {
      
    $newStart = ($start $limit 0) ? : ($start-$limit);
      echo 
    "[url=".$_SERVER['PHP_SELF']."]&lt;&lt; zurück[/url]";
    }

    if (
    $start $limit $total)
    {
      
    $newStart $start $limit;
      echo 
    " [url=".$_SERVER['PHP_SELF']."]vor &gt;&gt;[/url]";
    }


    ?>

    Habe mehr als 8 Einträge in meiner Datenbank. Er zeigt mir die ersten 4 an, da LIMIT 0= 4 ist,
    wenn nun auf vor klicke passiert nichts, habe da etwas falsch verstanden, oder muß im Code etwas ändern, damit die VOR-Funktion funktioniert ?


    Wäre für jede Hilfe dankbar

    Grüße
    ava98


  • #2
    Wie schon im anderen Thread gesagt...Du warst doch schon auf dem richtigen Dampfer.
    Schalte mal dein Error-Reporting in deiner php.ini auf E_ALL (Apache restarten).

    Dann bekommst du den Hinweis auf undefinierte Variablen, wie z.B. $start. Wenn das nicht der Fall ist, hast du register_globals auf on, was auch sehr schlechter Stil ist.

    Kommentar


    • #3
      Hallo,

      @Zerlinh, hab in der php.ini register_globals auf off stehen. Demnach muß ich $start definieren also $start=0;

      Kannst du mir nicht noch einen Tipp geben?


      Grüße
      ava99

      Kommentar


      • #4
        Du mußt $start mit einem Startwert initiieren.
        Wenn du ihn jedes mal mit 0 initiierst wird deine Erhöhung durch den Submit-Button einfach überschrieben.

        Wie im anderen Thread schon gesagt, mußt du $start so definieren

        PHP-Code:
        <?php
        $start 
        = isset($_REQUEST["start"]) ? intval($_REQUEST["start"]) : 0;
        ?>
        $_REQUEST["start"] deshalb, weil dein start-Wert ja offenbar per Formular (Submit-Button) gesetzt wird (und ich nicht weiß ob du GET oder POST verwendest).

        Wenn du das Problem nicht verstehst wirst du nicht weit kommen.

        Kommentar

        Lädt...
        X