Ankündigung

Einklappen
Keine Ankündigung bisher.

For Schleife richtig setzen

Einklappen

Neue Werbung 2019

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

  • For Schleife richtig setzen

    Hallo,


    Habe eine Tabelle "Antworten" in der mehrere Einträge sind.
    Diese möchte ich auf auf 4 begrenzen. Wollte dies mit einer for-Schleife lösen, nur irgendwie bekomme ich das nicht so wirklich hin. Im Moment werden, wenn ich die Schelife weglasse eine Antwort oder wenn ich die Scheife setze keine angezeigt..

    Code:
     <?
    include('connect.php'); 
    // Verbindung zum MySQL-Server
    $db = mysql_connect ($dbserver, $dbuser, $dbpass);
    
    // Sämtliche Datensatz-Ausgabe durchführen
    $resultat = mysql_db_query($dbname, $SQL_Befehl);
    $result = mysql_query("SELECT * FROM fragen ");
    if (!$result) {
       echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
       exit;
    }
    /* Benutze result, unrer der Annahme wir sind hinterher damit fertig */
    $row = mysql_fetch_assoc($result);
    
    /* Nun geben wir den Speicher für result frei und fahren in unserem Skript fort */
    mysql_free_result($result);
    
    echo $row['frage'];
    echo "
    ";
    
    
    $result = mysql_query("SELECT * FROM antworten ");
    if (!$result) {
       echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
       exit;
    }
    /* Benutze result, unrer der Annahme wir sind hinterher damit fertig */
    $row = mysql_fetch_assoc($result);
    
    /* Nun geben wir den Speicher für result frei und fahren in unserem Skript fort */
    mysql_free_result($result);
    for ($i=0; $i < 4; $i++){  //Schleifenbeginn, Begrenzung auf 4 Antworten
    echo $row['antwort'];
    echo "
    ";
    echo "<input type='submit' name='Submit' value='Abschicken'>";
    }
    $close;
    ?>
    Vielen Dank für eure Hilfe schon im voraus


    Grüße
    ava99


  • #2
    Hi,

    Du liest ja auch nur 1 Recordser aus dem Resultset aus und gibst danach ganz glücklich Dein Resultset frei! Anschließend kommt dann die Schleife, das sollte schon auffallen, daß das bekloppt ist!

    Also das

    PHP-Code:
    <?php
    /* Benutze result, unrer der Annahme wir sind hinterher damit fertig */ 
    $row mysql_fetch_assoc($result); 
    ?>
    gehört in die erste Zeile der Schleife. Außerdem sollte dieser Kommentar schleunigst verschwinden. So ein Blödsinn! Der passt hier nicht her.

    Das da:
    PHP-Code:
    <?php
    mysql_free_result
    ($result);
    ?>
    kommt hinter die Schleife.

    So, bleiben aber noch ein paar Probleme! Was passiert wenn es mal nur 3 Antworten gibt? -> Murx!

    Neben der Lektüre zu grundlegenden Kontrollmechanismen und dem PHP-Handbuch empfehle ich Dir dringend mal nach "SELECT .... LIMIT" im MySQL-Manual zu suchen. Das bringt Dich hier viel weiter!

    Und versuche doch das nächste mal selbst nur den relevanten Teil des Scriptes herauszufinden der Fehler macht. :wink:

    Kommentar

    Lädt...
    X