Zrobiłem sortowanie, wydawało mi się, że dobrze zrobione, ale jak zwykle działać nie chce, nawet mnie to nie dziwi. Gdzie jest błąd?
index.php
<?php
ob_start();
?>
<html>
<head>
<style>
.btn_stan0{
font-size: 16;
width: 100%;
height: 100%;
background-color: red;
color: white;
}
.btn_stan1{
font-size: 16;
width: 100%;
height: 100%;
background-color: green;
color: white;
}
.btn_resetuj_wszystko {
background-color: black;
color: white;
font-size: 15;
font-weight: 900;
}
.btn_sortowanie {
background-color: #ff5733;
color: white;
font-size: 15;
font-weight: 900;
}
</style>
</head>
<body>
<?php
//Łączenie z bazą danych
$sqltable = 'TestowySerial';
$sortowanie = 'rosnaco';
$db = new PDO('sqlite:lista.db');
$result = $db->query("SELECT * FROM $sqltable");
//Infomracje początkowe
// phpinfo();
//nazwa bazy danych
//$nazwabazy = $db->query('SELECT name FROM sqlite_master WHERE type = "table"');
///$nazwabazy = $nazwabazy->fetch();
echo "Nazwa tabeli:<b> $sqltable</b></br>";
//ilość rekordów
$statement = $db->query("SELECT COUNT(*) FROM $sqltable");
$result = $statement->fetch();
$ile = $result[0];
echo "Ilość elementów w tabeli:<b>". $ile."</b></br>";
echo"<form action='' method='post'><input class='btn_resetuj_wszystko' type=submit value='Resetuj wszystko!' name=resetuj_wszystko></form>";
echo"<form action='' method='post'><input class='btn_sortowanie' type=submit value='Sortuj malejąco/rosnąco' name=sortowanie></form>";
echo "</br> </br>";
//koniec poczatkowych informacji
//Tabela rekordów
echo "<center><table border=1 width=75%> ";
echo'<tr style="font-weight:900;"><td>ID</td><td width=4%>S</td><td>Odc</td><td>Seria</td><td>Rok</td><td>Nazwa</td></tr>';
$licznik_tabelowy=0;
//Sortowanie
if($sortowanie == 'rosnaco'){
$sql =<<<EOF
SELECT * from $sqltable;
EOF;
}
else
{
$sql =<<<EOF
SELECT * from $sqltable ORDER BY ID DESC;
EOF;
}
//Wyswietlanie
$ret = $db->query($sql);
while ($row = $ret->fetch()){
//echo "Wykonano ".$licznik_tabelowy." razy.</br>";
echo "<tr><td>";
$licznik_tabelowy++;
echo"<a name='$licznik_tabelowy'></a>".$row['ID']."</td>";
$licznik_tabelowy--;
echo '<td>'; //. $row['stan'];
if ($row['stan']==0){
$btn_stan_znak = '✘'; }
else{
$btn_stan_znak = '✔'; }
echo"<form action='' method='post'><input class='btn_stan".$row['stan']."' type=submit value=$btn_stan_znak name=p$licznik_tabelowy></form></td>";
echo '<td>nr:' . $row['nr']."</td>";
echo '<td>sezon ' . $row['sezon']."</td>";
echo '<td>rok ' . $row['rok']."</td>";
echo '<td>Nazwa: ' . $row['nazwa']."</td>";
echo "</tr>";
$licznik_tabelowy++;
}
//Obsługa przycisków
/*if(isset($_POST['p0'])){
$ret = $db->query('SELECT stan FROM TestowySerial WHERE id=1');
$row = $ret->fetch();
echo "Przycisk kliknięty!";
if ($row['stan']==0){
$db->exec("UPDATE TestowySerial SET stan=1 WHERE ID=1"); }
else{
$db->exec("UPDATE TestowySerial SET stan=0 WHERE ID=1"); }
unset($_POST['p0']);
//echo'<script src="norefresh.js"></script> <div id="load"> </div>';
header('refresh: 0;'); }
*/
for ($x=0; $x<$ile; $x++)
{
//echo "Tyle razy: ".$x;
if(isset($_POST['p'.$x])){
$ret = $db->query("SELECT stan FROM $sqltable WHERE id=".$x."+1");
$row = $ret->fetch();
echo "Przycisk kliknięty!";
if ($row['stan']==0){
$db->exec("UPDATE $sqltable SET stan=1 WHERE ID=$x+1"); }
else{
$db->exec("UPDATE $sqltable SET stan=0 WHERE ID=$x+1"); }
unset($_POST['p'.$x.'+1']);
//echo'<script src="norefresh.js"></script> <div id="load"> </div>';
$x=$x-2;
header("location:index.php#$x");
$x=$x+2;
}
if(isset($_POST['resetuj_wszystko']))
{
$ret = $db->query("SELECT stan FROM $sqltable");
$row = $ret->fetch();
$db->exec("UPDATE $sqltable SET stan=0");
header("refresh: 0;");
}
if(isset($_POST['sortowanie']))
{
if($sortowanie == 'rosnaco'){
$sortowanie = 'malejaco';
header("refresh: 0;");
echo"SDFSDJF";
}
else{
$sortowanie = 'rosnaco';
header("refresh: 0;");
echo"SDFSDJF";
}
}
}
echo "</table></br><hr>";
echo "2018 © \n";
//TUTAJ TESTUJEMY KOD
//TUTAJ JUŻ KOŃCZYMY TESTOWANIE
echo "</hr>";
?></body>
</html>
<?php
ob_end_flush();
?>