Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kolejność w tabeli
roobik
post
Post #1





Grupa: Zarejestrowani
Postów: 410
Pomógł: 5
Dołączył: 25.01.2005
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Witam!
Nie wiem czy będę umiał to wytłumaczyć, ale się postaram:
Obecnie w atbeli ułożone są rekordy, które są wyświetlane w kolejności ich dodania. No i teraz tak:
Cytat
$query = 'INSERT INTO progsy(nazwa, prod, licz) VALUES ("'.$_POST['nazwa'].'" , "'.$_POST['prod'].'", 0)';

Tak jest teraz. Jeśli jednak zmienię (a raczej dodam) wpis na taki:
Cytat
$query = 'INSERT INTO progsy(nazwa, prod, licz) VALUES ("'.$_POST['nazwa'].'" , "'.$_POST['prod'].'", 0) ORDER BY licz DESC';

to niby jest OK, bo chcę mieć wartości w kolejności malejącej. Ale po lewej stronie tabeli mam kolumnę, gdzie znajduje się $id każdego rekordu. Więc wraz z sortowaniem w kolejności malejącej nie jest "poukładane" wg kolejności rosnącej tzw liczba pojedyncza (Lp.)
Troche zamotalem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ale chyba wiadomo o co chodzi...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
yenk
post
Post #2





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 24.02.2004
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


No to muszę być inny, aby nie rozumieć. Zrób tak jak mówił Arkadyjczyk i zmień kod. Załóżmy, że dodajesz sobie kolumne o nazwie LP, w której zapisujesz zawsze nr większy od poprzedniego i po kłopocie. A później robisz tak:

.'<td width="20">'.$lp['lp'].'</td>'


Zresztą, widzę, że masz problemy więc pokażę Ci jak masz zapisywać nr o 1 większy. Mam nadzieję, że już sobie poradzisz.

  1. <?
  2. mysql_connect(&#092;"\", \"\", \"\");
  3. mysql_select_db (&#092;"\"); //łączymy się z bazą, wybieramy ją, to chyba logiczne
  4.  
  5. $sql = &#092;"SELECT lp FROM nazwa_tabeli ORDER BY lp DESC LIMIT 1\"; //pobieramy ostatni najwyższy numerek
  6. $query = mysql_query( &#092;"$sql\"); //właściwie to teraz pobieramy przez zapytanie
  7. $tablica = mysql_fetch_assoc( $query ); //tworzymy tablicę z zapytania
  8. $liczba = $tablica['lp']; //dła ułatwienia robimy sobie prostszą zmienną
  9. $uzyskana_liczba = $liczba + 1; //do naszej najwyższej liczby dodajemy 1
  10. $ustawienie = &#092;"INSERT INTO toplista (lp) VALUES ('\".$uzyskana_liczba.\"' )\"; //ustawiamy zmienną do zapisania naszej uzyskanej liczby
  11. $query = mysql_query( &#092;"$ustawienie\"); //a tutaj wykonujemy to zapisywanie
  12. ?>


Powodzenia!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 14:20