2016-07-07 5 views
0

Hey Ich versuche, die nächste Zeile auf Aktualisieren anzuzeigen und wenn es in der letzten Zeile ankommen, um es von Anfang an zu nehmen. Hier ist mein TischIch versuche, nächste Zeile auf aktualisieren anzuzeigen, aber ich bekomme eine leere Seite

col1 row(1) 
col2 row(1) 
col3 row(1) 
col4 row(1) 
col5 row(1) 

und auf Refresh zu bekommen

col1 row(2) 
col2 row(2) 
col3 row(2) 
col4 row(2) 
col5 row(2) 

und wenn es endlich Reihe ankommen es von Anfang nehmen.

col1 row(1) 
col2 row(1) 
col3 row(1) 
col4 row(1) 
col5 row(1) 

Hier ist der Code so weit:

<?php 
include 'connect.php'; 
session_start(); 

if(isset($_SESSION["id"])){ 
    $_SESSION["id"] = $_SESSION["id"] + 1; 
} 
else{ 
    $_SESSION["id"] = 1; 
} 

$id = $_SESSION["id"]; 

//Your mysql connection 

$results = mysqli_query($con, "SELECT * FROM testtable WHERE `id` = $id") or die('AM error occured: ' . mysqli_error()); 

while($row = mysqli_fetch_array($results)){ 
    echo $row["content0"]; 
    echo "<br>"; 
    echo $row["content1"]; 
     echo "<br>"; 
    echo $row["content2"]; 
     echo "<br>"; 
    echo $row["content3"]; 
     echo "<br>"; 
    echo $row["content4"]; 
     echo "<br>"; 
    echo $row["content5"]; 

} 
+0

Ich will bekomme jedes Mal, wenn ich die Seite, die nächste Zeile aus der Tabelle zu aktualisieren. –

+0

Sie brauchen Paginierung Art der Sache –

+0

Ich brauche mit Refresh, wenn es gemacht werden kann –

Antwort

0
<?php 
include 'connect.php'; 
session_start(); 

if(isset($_SESSION["id"])){ 
    $_SESSION["id"] = $_SESSION["id"] + 1; 
} 
else{ 
    $_SESSION["id"] = 1; 
} 

$id = $_SESSION["id"]; 

//Your mysql connection 

$result=mysqli_query($con,"SELECT count(id) as total from testtable"); 
$data=mysqli_fetch_assoc($result); 
echo $data['total']; 
if($data['total']<$id) 
{ 
$_SESSION["id"] = 1; 
    $id=1; 
} 


$results = mysqli_query($con, "SELECT * FROM testtable WHERE `id` = $id") or die('AM error occured: ' . mysqli_error()); 

while($row = mysqli_fetch_array($results)){ 
    echo $row["content0"]; 
    echo "<br>"; 
    echo $row["content1"]; 
     echo "<br>"; 
    echo $row["content2"]; 
     echo "<br>"; 
    echo $row["content3"]; 
     echo "<br>"; 
    echo $row["content4"]; 
     echo "<br>"; 
    echo $row["content5"]; 

} 

Erklärung:

wir hier insgesamt Aufzeichnungen und Kontrolle mit Strom aufgefrischt Artikel, wenn sie größer dann bekommen, dass wir zuweisen (1)

+0

Vielen Dank;) Btw $ result = mysqli_query ("SELECT count (id) als Summe aus testtable"); benötigt eine Verbindung: P $ result = mysqli_query ($ con, "SELECT count (id) als Summe aus testtable"); für die Zukunft, wenn jemand es braucht :) –

0

Um die nächste ID aus der Tabelle zu erhalten, wenn sie Lücken in ID-Werten aufweist, verwenden Sie diese Abfrage

select * 
from testtable 
where id >= if($id > (select max(id) from testtable), 1, $id) 
order by id 
limit 1 

und in Session-Variablen ausgewählt ID

0

speichern Was Sie brauchen, ist Paginierung, was mit $ _SESSION getan werden kann. Als nächstes ist ein Beispiel mit einer Reihe von Daten:

<?php 
session_start(); 
// SAMPLE DATA. 
$items = array(array("a","b","c","d","e","f"), 
       array("1","2","3","4","5","6"), 
       array("+","-","*","/","&","#") 
      ); 

if (! isset($_SESSION[ "current" ])) // IF THIS IS THE FIRST TIME. 
    $_SESSION[ "current" ] = 0; // FIRST ITEM TO SHOW. 
else if ($_SESSION[ "current" ] < (count($items)-1)) 
      $_SESSION[ "current" ] ++; // NEXT ROW. 
    else $_SESSION[ "current" ] = 0; // FIRST ROW AGAIN. 
?> 
<html> 
    <body> 
    Showing items : 
    <br/> 
<?php 
// DISPLAY CURRENT ROW. 
foreach ($items[ $_SESSION[ "current" ] ] as $item) 
    echo $item . " row(" . $_SESSION[ "current" ] . ")<br/>"; 
?> 
    <br/> 
    <br/> 
    -- Refresh to see next page -- 
    </body> 
</html> 

Copy-Paste vorherigen Code in einer PHP-Datei und öffnen Sie sich in Ihrem Browser. Jedes Mal, wenn Sie die Seite aktualisieren, wird der nächste Block von Elementen angezeigt.

Um es zu Ihrem Code anpassen, wir nur die Anordnung von Daten zu füllen müssen mit der SQL-Abfrage:

$results = mysqli_query($con, "SELECT * FROM testtable WHERE `id` = $id") 
      or die('AM error occured: ' . mysqli_error()); 
$items = array(); 
while($row = mysqli_fetch_array($results)){ 
    array_push($items,array($row["content0"], 
          $row["content1"], 
          $row["content2"], 
          $row["content3"], 
          $row["content4"], 
          $row["content5"])); 
} 
+0

Danke, für den Code Jose! –

Verwandte Themen