![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Czesc!
Dopiero sie ucze wiec prosze o pomoc! Mam taki skrypt: [php:1:43603d99bf]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); mysql_select_db ("baza") or die ("Nie mozna sie połaczyc"); $wynik = mysql_query ("SELECT * FROM lista;") or die ("Bład"); print "<TABLE CELLPADDING=0 BORDER=1>"; print "<TR><TD><B>Nr.</B></TD><TD><B>Imię</B></TD><TD><B>Nazwisko</B></TD>"; print "<TD><B>Wiek</B></TD></TR>n"; while ($rekord = mysql_fetch_array ($wynik)) { $id = $rekord[0]; $imie = $rekord[1]; $nazwisko = $rekord[2]; $wiek = $rekord[3]; print "<TR><TD>$id</TD><TD>$imie</TD><TD>$nazwisko</TD><TD>$wiek</TD></TR>n"; } print "</TABLE>"; ?>[/php:1:43603d99bf] I nie wiem jak zrobic zeby po kliknieciu np na nazwisko sortowało np. alfabetycznie lub liczbami. Prosze was o pomoc! |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat I nie wiem jak zrobic zeby po kliknieciu np na nazwisko sortowało np. alfabetycznie lub liczbami.
Prosze was o pomoc! Zrób sobie tytuł kolumny jako link w którym będziesz miał jako parametr pole po którym należy sortować. A potem w sqlu: [sql:1:d172692f0e]SELECT * FROM lista ORDER by nazwisko[/sql:1:d172692f0e] Tylko sprawdzaj co dostałeś w tym parametrze (czy napewno jest to nazwa pola z bazy), żebyś sobie nie zrobił dziury w skrypcie. ![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mozesz sie bardziej rozpisacbo nie wiem do konca?
[php:1:65e8cb14a6]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); mysql_select_db ("baza") or die ("Nie mozna sie połaczyc"); if(!$cowybrane){$cowybrane="id";} $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die ("Bład"); print "<TABLE CELLPADDING=0 BORDER=1>"; print "<TR> <TD><B><a href="1.php?cowybrane=id">Nr.</a></B></TD> <TD><B><a href="1.php?cowybrane=imie">Imię</a></B></TD> <TD><B><a href="1.php?cowybrane=nazwisko">Nazwisko</a></B></TD> <TD><B><a href="1.php?cowybrane=wiek">Wiek</a></B></TD></TR>n"; while ($rekord = mysql_fetch_array ($wynik)) { $id = $rekord[0]; $imie = $rekord[1]; $nazwisko = $rekord[2]; $wiek = $rekord[3]; print "<TR><TD>$id</TD><TD>$imie</TD><TD>$nazwisko</TD><TD>$wiek</TD></TR>n"; } print "</TABLE>"; ?>[/php:1:65e8cb14a6] Wyskakuje: "Bład". Cos jest chyba nie tak z tym, ale co? ![]() Kod $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or
die ("Bład"); |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Wyskakuje: "Bład".
Cos jest chyba nie tak z tym, ale co? ![]() Kod $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die ("Bład"); Jaki błąd? Wymień od razu sobie wszystkie wystąpienia [php:1:b559acceae]$cowybrane[/php:1:b559acceae] na [php:1:b559acceae]$_GET['cowybrane'][/php:1:b559acceae] bo to chyba jest problemem. A samo sprawdzanie, zamiast [php:1:b559acceae]<?php if(!$cowybrane){$cowybrane="id";} ?>[/php:1:b559acceae] zrób [php:1:b559acceae]<?php if (!in_array($_GET['cowybrane'], array('id', 'imie', 'nazwisko', 'wiek'))) $_GET['cowybrane'] = 'id'; ?>[/php:1:b559acceae] |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Czyli cały skrypt jak ma wygldac cały?
Bo cos mi nadal nie działa. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Dostales wskazowki, wiec jezeli nadal Ci zle dziala to podaj gdzie i co.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Ja zrobiłem tak:
[php:1:43e1edd3e2]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); mysql_select_db ("baza") or die ("Nie mozna sie połaczyc"); if (!in_array($_GET['cowybrane'], array('id', 'imie', 'nazwisko', 'wiek'))) $_GET['cowybrane'] = 'id'; $wynik = mysql_query ("SELECT * FROM lista ORDER BY $_GET['cowybrane'];") or die ("Bład"); print "<TABLE CELLPADDING=0 BORDER=1>"; print "<TR> <TD><B><a href="1.php?cowybrane=id">Nr.</a></B></TD> <TD><B><a href="1.php?cowybrane=imie">Imię</a></B></TD> <TD><B><a href="1.php?cowybrane=nazwisko">Nazwisko</a></B></TD> <TD><B><a href="1.php?cowybrane=wiek">Wiek</a></B></TD></TR>n"; while ($rekord = mysql_fetch_array ($wynik)) { $id = $rekord[0]; $imie = $rekord[1]; $nazwisko = $rekord[2]; $wiek = $rekord[3]; print "<TR><TD>$id</TD><TD>$imie</TD><TD>$nazwisko</TD><TD>$wiek</TD></TR>n"; } print "</TABLE>"; ?>[/php:1:43e1edd3e2] Wyskakuje taki bład: Cytat Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:apachehtdocskarty2.php on line 8
I jak myslicie co zas zle zrobiłem ? ![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Zamiast:
[php:1:cb7fd28a1d]$wynik = mysql_query ("SELECT * FROM lista ORDER BY $_GET['cowybrane'];")...[/php:1:cb7fd28a1d] daj: [php:1:cb7fd28a1d]$wynik = mysql_query ("SELECT * FROM lista ORDER BY $_GET[cowybrane]")...[/php:1:cb7fd28a1d] |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
To co wyzej
![]() ![]() Cytat [php:1:0e6fad2c11]<?php
mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); mysql_select_db ("baza") or die ("Nie mozna sie połaczyc"); if(!$cowybrane){$cowybrane="id";} $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die ("Bład"); print "<TABLE CELLPADDING=0 BORDER=1>"; print "<TR> <TD><B><a href="1.php?cowybrane=id">Nr.</a></B></TD> <TD><B><a href="1.php?cowybrane=imie">Imię</a></B></TD> <TD><B><a href="1.php?cowybrane=nazwisko">Nazwisko</a></B></TD> <TD><B><a href="1.php?cowybrane=wiek">Wiek</a></B></TD></TR>n"; while ($rekord = mysql_fetch_array ($wynik)) { $id = $rekord[0]; $imie = $rekord[1]; $nazwisko = $rekord[2]; $wiek = $rekord[3]; print "<TR><TD>$id</TD><TD>$imie</TD><TD>$nazwisko</TD><TD>$wiek</TD></TR>n"; } print "</TABLE>"; ?>[/php:1:0e6fad2c11] Wyskakuje: "Bład". Cos jest chyba nie tak z tym, ale co? ![]() Kod $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die ("Bład"); |
|
|
![]()
Post
#10
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 384 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Chorzow Ostrzeżenie: (0%) ![]() ![]() |
Tajemniczy blad... grrr...
[php:1:4b53ac4254] $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die ("Bład"); [/php:1:4b53ac4254] zamien na [php:1:4b53ac4254] $wynik = mysql_query ("SELECT * FROM lista ORDER BY $cowybrane;") or die (mysql_error()); [/php:1:4b53ac4254] A skrypt Ci prawde powie... A pewnie sie okaze ze wlasciwym rozwiazaniem jest: [php:1:4b53ac4254] $wynik = mysql_query ("SELECT * FROM lista ORDER BY ".$_REQUEST['$cowybrane']) or die (mysql_error()); [/php:1:4b53ac4254] |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 680 Pomógł: 0 Dołączył: 1.10.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Tu jest problem z zapisem wiersza...
Nie: [php:1:08572a8339]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); ?>[/php:1:08572a8339] Tylko: [php:1:08572a8339]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); ?>[/php:1:08572a8339] -------------------- "Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Dałem tak!
[php:1:f941a05b90]<?php mysql_connect ("localhost", "root", "") or die ("Nie mozna sie połaczyc"); mysql_select_db ("baza") or die ("Nie mozna sie połaczyc"); if(!$cowybrane){$cowybrane="id";} $wynik = mysql_query ("SELECT * FROM lista ORDER BY ".$_REQUEST['$cowybrane']) or die (mysql_error()); print "<TABLE CELLPADDING=0 BORDER=1>"; print "<TR> <TD><B><a href="4.php?cowybrane=id">Nr.</a></B></TD> <TD><B><a href="4.php?cowybrane=imie">Imię</a></B></TD> <TD><B><a href="4.php?cowybrane=nazwisko">Nazwisko</a></B></TD> <TD><B><a href="4.php?cowybrane=wiek">Wiek</a></B></TD></TR>n"; while ($rekord = mysql_fetch_array ($wynik)) { $id = $rekord[0]; $imie = $rekord[1]; $nazwisko = $rekord[2]; $wiek = $rekord[3]; print "<TR><TD>$id</TD><TD>$imie</TD><TD>$nazwisko</TD><TD>$wiek</TD></TR>n"; } print "</TABLE>"; ?>[/php:1:f941a05b90] I wychodz: Kod You have an error in your SQL syntax near '' at line 1 [/quote]
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Niedziała!!!
wychodzi: Kod Unknown column 'id' in 'order clause'
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
wiec po co podajesz w swoim kodzie: $cowybrane="id" skoro takiej kolumny wogole nie ma ?
|
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Dzieki za poswiecenie o Sorki za ten bład miało byc zamiast id to nr.
SETH ten kod nie działa przyciska sie, ale nie sortuje tylko odswieza. |
|
|
![]()
Post
#18
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
hmm... podaj jakie kolumny masz w bazie
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
nr | imie | nazwisko | wiek |
chyba o to chodzi? |
|
|
![]()
Post
#20
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
Sprubuj tego. Wszystko powinno byc dobrze.
[php:1:aad72f406f]<?php // Plik 1.php mysql_connect( 'localhost', 'root', '' ) or die( 'Nie mozna sie połaczyc' ); mysql_select_db( 'baza' ) or die( 'Nie mozna sie połaczyc' ); if( empty( $_GET['order_by'] ) ) { $order_by = 'nr'; } else { $order_by = $_GET['cowybrane']; } $wynik = mysql_query( "SELECT * FROM lista ORDER BY ".$order_by ) or die (mysql_error()); ?> <TABLE CELLPADDING=0 BORDER=1> <TR><TD><B><a href="1.php?order_by=nr">Nr.</a></B></TD> <TD><B><a href="1.php?order_by=imie">Imię</a></B></TD> <TD><B><a href="1.php?order_by=nazwisko">Nazwisko</a></B></TD> <TD><B><a href="1.php?order_by=wiek">Wiek</a></B></TD></TR> <?php while ( $rekord = mysql_fetch_array( $wynik ) ) { print "<TR><TD>$rekord[nr]</TD><TD>$rekord[imie]</TD><TD>$rekord[nazwisko]</TD><TD>$rekord[wiek]</TD></TR>n"; } ?> </TABLE>[/php:1:aad72f406f] |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:15 |