Afisare prima poza daca ultima nu exista

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Avatar utilizator
evident
Mesaje:168

Afisare prima poza daca ultima nu exista

Salut, am codul:

Cod: Selectaţi tot

<?php
$id_poza = $_GET['id']; 
$Next = mysqli_query($db_conx,"SELECT * FROM poze WHERE id > '$id_poza' ORDER BY id ASC LIMIT 1");
    while($row = mysqli_fetch_array($Next)) {
    $output_next = "";
    $id_next = $row["id"]; 
    $filename_next = $row["filename"];
    $user_p_next = $row["user_p"];
    
    $output_next = '<a href="prev_poze.php?id=' . $id_next . '">Urmatoarea</a>';    
    }
?>
<?php echo $output_next; ?>
Cand dau pe urmatoarea imi afiseaza poza ok, dar cand am ajuns la ultima poza imi da urmatoarea eroare:

Cod: Selectaţi tot

Undefined variable: output_next
As vrea ca atunci cand ajunge la ultima poza din baza de date sa inceapa din nou cu prima poza.
Multumesc

MarPlo Mesaje:4343
Salut
Incearca asa:

Cod: Selectaţi tot

<?php
$id_poza = $_GET['id'];
$id_next = 1;      // id prima poza
$Next = mysqli_query($db_conx,"SELECT * FROM poze WHERE id > '$id_poza' ORDER BY id ASC LIMIT 1");
while($row = mysqli_fetch_array($Next)) {
  $id_next = $row["id"]; 
  $filename_next = $row["filename"];
  $user_p_next = $row["user_p"];
}

$output_next = '<a href="prev_poze.php?id=' . $id_next . '">Urmatoarea</a>';
echo $output_next;
?>

evident Mesaje:168
Am incercat cum ai zis si nu merge

MarPlo Mesaje:4343
Nu stiu de ce nu merge. Conform codului, daca nu exista $row["id"] pentru $id_next, atunci $id_next va avea valoare /ID-ul initial (1, sau care il pui pentru prima poza).
Asta e ideea, dar poate trebuie sa faci niste verificari si modificari in cod, sa vezi ce valori au variabilele setate, cum ar fi (ca exemplu general):

Cod: Selectaţi tot

var_dump($variabila); echo $sql;
precum si codul html rezultat; asa iti poti da seama unde intervine problema.

Subiecte similare