MySql-Abfrage nach Submit um eins erhöhen

ava99

Erfahrenes Mitglied
Hallo,

Abfrage der Tabelle mit php begrenzt auf 4 Einträge ist nun geschafft.
Nun nach drücken des Submit Buttons möchte ich das die Abfrage den darauffolgenden Eintrag anzeigt.

PHP:
$query2 = sprintf("SELECT * FROM $dbname.antworten LIMIT 4");
$result2 = mysql_query($query2);		
while ($row2 = mysql_fetch_assoc($result2)) {
 echo "<br><INPUT type='radio' name='wahrheit'>" ,$row2['antwort'], "<br>";
}
echo "<input type='submit' name='Submit' value='Abschicken'> </form>";

der Inhalt der Tabelle ist id, antwort.
Erledige dies mit for -Schleife oder while-Schleife ? :confused:


Wäre für jede Hilfe dankbar.

Grüße
ava99
 
Du kannst LIMIT einen Startwert mitgeben.

Du kannst dann Deinem Button die Seitenzahl mitteilen und bei erneuten Laden um 1 hochzaehlen.
Der uebergebene Wert wird mit 4 multipliziert und ergibt somit den Startwert. Seite 1 muss natuerlich den Wert 0 haben, da sonst 4 Eintraege uebersprungen werden.

SELECT Statement
 
Hallo,


@Dennis Wronka:
Vielen Dank für deinen Link.Klasse seite, hat mich jetzt gut voran gebracht.
habe meiner SQL-Anweisung den Startwert hinzugefügt
PHP:
$rand_row1=1;
$query2 = sprintf("SELECT id,antwort FROM $dbname.antworten LIMIT 
$rand_row1,4");
PHP:
echo "<input type='submit' name='Submit' value='Abschicken'>";
wie weise dem Button das zu ?

Grüße
ava99
 
Du kannst am besten ein Hidden-Feld in das Formular setzen welches immer den Wert fuer die naechste Seite enthaelt.

Beispiel:
PHP:
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="hidden" value="<?php echo $page+1; ?>">
<input type="submit" name="weiter" value="Naechste Seite">
</form>
 
Hallo,

vielen Dank für deine schnelle Antworten.So nun hab dies mal in den Code eingebaut und habs dann geladen.

PHP:
<?
include('connect.php'); 
$rand_row3=1;
$rand_row4=4;
echo $row1['frage'],"<br>";
echo "Antwort 1-4";
echo "<form method='post' action='$_PHP_SELF'>";

$query2 = sprintf("SELECT * FROM $dbname.antworten LIMIT  $rand_row3, $rand_row4");
$result2 = mysql_query($query2);		
while ($row2 = mysql_fetch_assoc($result2)) {
 echo "<br><INPUT type='radio' name='wahrheit'>" ,$row2['antwort'], "<br>";
}
echo "<input type='submit' name='weiter' value='Naechste Seite'> ";
echo "<input type='submit' value='<?php echo $rand_row3+1; ?>'>";
$close;
?>

Der Wert erhöht sich nicht und wenn würde er sich nur einmal erhöhöhen,wie erreiche ich es, dass bei jedem mal betätigen um eins erhöht ?

Für jede Hilfe wäre ich dankbar.

Grüße
ava99
 
Zuletzt bearbeitet:
was ist denn das?


Code:
echo "<input type='submit' name='weiter' value='Naechste Seite'> ";
echo "<input type='submit' value='<?php echo $rand_row3+1; ?>'>";


versuch mal:
PHP:
echo "<input type='hidden' name='seite' value='".$seite."'>"; 
echo "<input type='submit' value='Naechste Seite'> ";

dazu solltest du mit:
PHP:
$rand_row4=4; // zu zeigende Anzahl

if ($_POST[seite]) {
  $rand_row3=$rand_row4 * $_POST[seite];
  $seite++;
} else {
  $rand_row3=0; // default wert (wenn kein $_POST[seite])
  $seite = 0;
}

PS: habe es nicht getestet...
 
Zurück