[PHP][MySQL][HTML] Czyli pomóżcie mi z moim projektem ; )
Mam sobie takie cuś, że mam tabelę na stronie, która odzwierciedla tabelę w bazie danych, lecz zrobiona ona na zasadzie pól tekstowych (to ma być w panelu admina, do edycji rekordów)
Kod pehapowy, którym robię tą o to tabelkę
Jak widać, w każdej linii mam na końcu checkboxa, w jaki sposób zrobić walidację, żeby po naciśnięciu submita zaktualizowało tylko te rekordy (czyt. linijki) przy których checkbox jest zaznaczony ? (nie chcę niepotrzebnie zużywać zasobów serwera na update wszystkich pól, a będzie ich pare-set)..
Czy może lepszym pomysłem będzie zrobienie przycisku obok każdej linijki zamiast tego checkboxa i wtedy jak to ogarnąć, żeby mi aktualizowało tylko tą linijkę, w której kliknąłem submit ??
W jaki sposób mogę posortować wyniki z tej bazy danych, żeby mi w tabeli to pokazało mi alfabetycznie według serwerów ?
Kod PHP:
<?
$connection = mysql_connect($dbhost, $dblogin, $dbhaslo) or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
$dba = mysql_select_db($db, $connection) or die('Nie mogę połączyć się z bazą danych<br>Błąd: '.mysql_error().'<br>');
$wynik = mysql_query("SELECT * FROM `serwery` ORDER BY 'serwer' ASC")
or die('Błąd zapytania');
if(mysql_num_rows($wynik) > 0) {
echo "<table border='1'>";
echo "<tr>";
echo "<td>Server</td><td>Price : (1kk)</td></tr><tr>";
while($r = mysql_fetch_assoc($wynik)) {
echo "<td>".$r['serwer']."</td><td>".$r['cena']."</td></tr><tr>";
}
echo "</table>";
}
mysql_close($connection);
?>
niestety ORDER BY 'serwer' ASC nie działa...
18-03-2014, 01:47
Absherr
A spróbuj to zapytanie wykonać przez konsolę. Albo wrzuć tutaj dumpa, szczególnie kawałek z tworzeniem tej tabeli.
18-03-2014, 02:00
BBsrv
@Absherr ;
chodzi co o typy pól w bazie danych ?
do shh nie mam dostępu na tym hoscie, albo mam a nie widze (nie lubie DA). https://i.imgur.com/n44Pctc.png
przez php jak i przez phpmyadmin nie sortuje..
anyway, jak zrobić dumpa, bez dostępu do shh? nie bawiłem się nigdy w bazy danych, dopiero ten projekt robię z db ;p
18-03-2014, 02:19
Absherr
Możesz spróbować:
Kod:
SELECT *
FROM serwery
ORDER BY LOWER(server);
A dumpa powinno dać się zrobić z poziomu phpmyadmin. Jakaś opcja eksportuj albo coś takiego. Nie wiem czy to coś pomoże, ale wrzucić możesz.
18-03-2014, 02:26
BBsrv
Cytuj:
Absherr napisał
Możesz spróbować:
Kod:
SELECT *
FROM serwery
ORDER BY LOWER(server);
Działa, dzięki ; )
20-03-2014, 23:13
BBsrv
Mam sobie takie cuś, że mam tabelę na stronie, która odzwierciedla tabelę w bazie danych, lecz zrobiona ona na zasadzie pól tekstowych (to ma być w panelu admina, do edycji rekordów)
Kod pehapowy, którym robię tą o to tabelkę
Jak widać, w każdej linii mam na końcu checkboxa, w jaki sposób zrobić walidację, żeby po naciśnięciu submita zaktualizowało tylko te rekordy (czyt. linijki) przy których checkbox jest zaznaczony ? (nie chcę niepotrzebnie zużywać zasobów serwera na update wszystkich pól, a będzie ich pare-set)..
Czy może lepszym pomysłem będzie zrobienie przycisku obok każdej linijki zamiast tego checkboxa i wtedy jak to ogarnąć, żeby mi aktualizowało tylko tą linijkę, w której kliknąłem submit ??
Jedyne co mi do głowy przychodzi to jechać pętlą, jeśli zaznaczony (jakieś id doklejaj czy co do niego) to update
Bo chyba i tak się nie da w jednym zapytaniu to czemu by nie
20-03-2014, 23:36
BBsrv
Jednak chyba zrobię to w ten sposób, po prostu po kliknięciu submit zrobię przekierowanie na test.php?id=""&zmien=true i wtedy pobiorę id getem i w tym id zrobię update, bez zbędnego yebania się