[ Príspevkov: 13 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
NapísalOffline : 25.05.2012 21:22 | Triedenie podľa textu

Ahojte. Potreboval by som pomôcť s vyhľadávaním podľa textu z textfieldu. Mám dva textfieldy...z jedného sa dá triediť dvomi tlačidlami(spz) a z druhého sa berie a triedi podľa dátumu. Mám kód:
Kód:
<form action="index.php?a=<?php echo $_POST['triedit'] ?>" method="POST"><input type="text" name="triedit" size="6" value=""><input type="submit" name="triedit1" value="ŠPZ ťahača"><input type="submit" name="triedit2" value="ŠPZ návesu"></form>

<form action="index.php?a=<?php echo $_POST['triedit2'] ?>" method="POST"><input type="text" name="triedit2" size="6"  value="<?php echo date("Y-m-d") ?>"><input type="submit" name="triedit3" value="Dátumu"/></form>
</td></tr></table>


</td>
</table>
  <?php
require "../mysql.php";
$a=$_GET['a'];
   if(isset($_POST['triedit1'])){ $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola WHERE spz_auto=$a order by date ASC LIMIT 100");}
elseif(isset($_POST['triedit2'])){ $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola WHERE spz_naves=$a order by date ASC LIMIT 100");}
elseif(isset($_POST['triedit3'])){ $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola WHERE date=$a order by date ASC LIMIT 100");}
else { $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola order by date ASC LIMIT 30"); }
 
  if (!$kontrola){
            echo "doslo k chybe pri otavarani SQL odkazu !"; }
            else{
?>


Offline

Čestný člen
Čestný člen
Triedenie podľa textu

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5447
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 25.05.2012 21:57 | Triedenie podľa textu

Pekný kód, ďakujeme, že si sa podelil.


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 25.05.2012 22:04 | Triedenie podľa textu

Nechápem, čo myslíš. Mám dať celý? Ale všimol som si, že som zabudol napísať s čím je problém. Pardon. Takže. Horný form mi vyhľadá len podľa čísel, dolný, dátum mi nechce vyhľadať. Resp nechce vytriediť podľa toho. A aj keď vytriedi podľa čísel, tak po stlačení zlačidla sa vypíše chyba:"doslo k chybe pri otavarani SQL odkazu"a až po ďalšom refreshi spraví to čo chcem. Dal by sa ten medzikrok(refresh) vynechať?Vo výsledku by to teda malo po stlačení tlačidla zobraziť výsledky vhodné pre triedenie podľa textfieldu. Ďakujem.


Offline

Čestný člen
Čestný člen
Triedenie podľa textu

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5447
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 25.05.2012 22:30 | Triedenie podľa textu

Nezamýšlal som sa nad tým, v čom je problém, ale ten kód je otrasný.
Poďme poporiadku:
Kód:
form action="index.php?a=<?php echo $_POST['triedit']

uvedomuješ si, že pri prvej návšteve stránky bude POST triedit prázdne a tým pádom sa ti ani nič Nenaplní do $a (ani po odoslaní formuláru).

Kód:
<input type="submit" name="triedit2" value="ŠPZ návesu"> ... <input type="text" name="triedit2" size="6"  value="<?php echo date("Y-m-d") ?>">

Nevidíš tam nejakú podobnosť? Prečo máš dva odlišné inputy s rovnakým name?

A ten spodný kód ani komentovať nejdem, zbytočne sa ti opakuje kód, je väčšia pravdepodobnosť, že urobíš chybu.


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 25.05.2012 22:49 | Triedenie podľa textu

Ten vrch skúsim zajtra poludštiť. Čo sa týka spodku, tak neviem ako inak to spraviť, ide o reakcie na jednotlive tlačidlá, s tým, že prvý select triedi podla spz_navesu, druhy podla spz_auta a tretí by mal podľa dátumu...Mal by som radšej do premennej ukladať celé where a to vkladať podľa potreby iba do jedného selectu?


Offline

Čestný člen
Čestný člen
Triedenie podľa textu

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5447
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 26.05.2012 10:21 | Triedenie podľa textu

Začal by som týmto:
1. Ak to chceš mať cez rôzne buttony, dal by som to do jedného formuláru (nechápem, prečo používaš dva)
2. Namiesto viacerých odosielacich buttonov by som prepínanie medzi triedením riešil cez radio buttony, alebo cez select.
3. Pozri si tvoju query (queries), spz_auto, spz_naves a datum sú čísla? Lebo ak nie, tak ti tam chýbajú úvodzovky okolo stringu.
4. A áno, riešil by som to tak, že by som mal iba jednu query, ktoré by som predával celý where parameter cez premennú. Prípadne by som použil nejaký db layer, kde sa takéto veci robia oveľa jednoduchšie (ale tým sa ty teraz nezaťažuj).


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 26.05.2012 10:28 | Triedenie podľa textu

Dva formuláre som mal, lebo najprv som chcel vyhľadávať aj podľa dátumu aj podľa spz, ale nakoniec dátum netreba, takže je iba jeden a dve tlačítka. Ale o to nejde. Tie chýbajúce úvodzovky sú asi ten problém, že mi nechce vyhľadať ten text. Tie tlačidlá skúsim cez ten radio button...Skúsim sa s tým vyhľadávaním pobiť. Ďakujem shaggy.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 28.05.2012 0:47 | Triedenie podľa textu

Odosielanie formulára som vyriešil pomocou javascriptu. Kód:
Kód:
<script type="text/javascript">
function submitform()
{
    document.forms["triedic"].submit();

}
</script>
<form id="triedic" action="index.php">
<input type='text' name='a'>
<input type="button" name="triedit1" id="triedit1" value="ŠPZ auta" onClick="submitform()" />
<input type="button" name="triedit2" id="triedit2" value="ŠPZ návesu" onClick="submitform()" /></form>

</td></tr></table></td></table>
  <?php
require "../mysql.php";
$a=$_GET['a'];
   if(isset($_POST['triedit1'])){ $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola WHERE spz_auto in '$a' order by date ASC LIMIT 100");}
elseif(isset($_POST['triedit2'])){ $kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola WHERE spz_naves in '$a' order by date ASC LIMIT 100");}
else {$kontrola=mysql_query("select id,date,spz_naves,spz_auto,spolocnost,vodic,technik,poznamka FROM kontrola order by date ASC LIMIT 100");}
  if (!$kontrola){
            echo "doslo k chybe pri otavarani SQL odkazu !"; }
            else{
?>


Problém je, že aj keď formulár odošlem, tak sa mi zmení url na napr: http://localhost/kontrola/index.php?a=13, ale stránka sa nevytriedi. Nevytriedi sa dokonca ani keď dám do toho selectu v else podmienku. Nezamýšľajme sa nad škaredosťou kódu prosím ale nad problémom. Ďakujem.


Offline

Užívateľ
Užívateľ
Triedenie podľa textu

Registrovaný: 28.04.11
Prihlásený: 18.12.17
Príspevky: 291
Témy: 26 | 26
Bydlisko: Martin/Brno
Vek: 23
NapísalOffline : 28.05.2012 13:55 | Triedenie podľa textu

nechápem načo si tam vtrepal ten javascript. Minimálne jedna chyba je, že nemáš zadané, ktorú metódu požívaš si vyber buď GET alebo POST lebo z obomi naraz ti to asi nepôjde.


_________________
Stroje: zobraziť
NTB:
Lenovo W541 | i7-4810MQ | Quadro K1100M | 500GB SSD | 16GB RAM | Fedora 25 + i3wm

Mobil:
Nexus 5X

DSLR
Nikon D5100
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 28.05.2012 17:19 | Triedenie podľa textu

Už mi to fičí. Mám s tým len malý kozmetický problém. Ako...funguje to, ale bol by som radšej keby sa z textboxu odosielali údaje veľkými písmenami. V textboxe to mám zabezpečené pomocou:
Kód:
style="text-transform:uppercase"
, ale v url sa text zobrazí malými písmenami. Dá sa to spraviť?
Form vyzerá takto:
Kód:
<form id="triedic" action="index.php">
Podľa ŠPZ auta<input type="radio" name="podla" id="podla" value="1" checked/>
Podľa ŠPZ návesu<input type="radio" name="podla" id="podla" value="2" /><br>
<input type="text" id="spz" name="spz" value="" style="text-transform:uppercase;width:126px" >
<input type="submit" name="triedit" value="Triediť" style="width: 126px"/></form>

A ešte jedna kozmetická vec, keď sa odošle form, tak v url je zahrnuté aj tlačidlo(triedit). Dá sa tomu vyhnúť? Aby bolo namiesto tohto:
Kód:
index.php?podla=2&spz=tt-123ab&triedit=Triediť

toto:
Kód:
index.php?podla=2&spz=TT-123AB


Sú to len kozmetické veci, ale tie malé písmená by možno mohli robiť problémy na linuxe(neskúšal som, neviem).
Čo sa týka toho textboxu, ten má predpísaný vzor pomocou js. Bolo by treba ten uppercase použiť v tom js? Ďakujem.


Offline

Užívateľ
Užívateľ
Triedenie podľa textu

Registrovaný: 28.04.11
Prihlásený: 18.12.17
Príspevky: 291
Témy: 26 | 26
Bydlisko: Martin/Brno
Vek: 23
NapísalOffline : 28.05.2012 20:02 | Triedenie podľa textu

Použi metódu POST. A kedy konkrétne potrebuješ tie veľké písmená pri hľadaní v DB ? Môžeš použiť PHP funkciu strtoupper($str).


_________________
Stroje: zobraziť
NTB:
Lenovo W541 | i7-4810MQ | Quadro K1100M | 500GB SSD | 16GB RAM | Fedora 25 + i3wm

Mobil:
Nexus 5X

DSLR
Nikon D5100
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 03.04.17
Príspevky: 116
Témy: 28 | 28
Napísal autor témyOffline : 28.05.2012 20:13 | Triedenie podľa textu

No ja to nepotrebujem skryť, ja by som chcel aby to tam vôbec nebolo, ale ono to až tak nevadí. strtoupper($str) skúsim použiť. Ďakujem.


Offline

Čestný člen
Čestný člen
Triedenie podľa textu

Registrovaný: 11.08.07
Príspevky: 4110
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 29.05.2012 9:43 | Triedenie podľa textu

xxx9955 píše:
bol by som radšej keby sa z textboxu odosielali údaje veľkými písmenami
Stavajuci sposob ti nefungoval, lebo ten text sa premeni na velke pismena len u klienta, iba to meni sposob zobrazenia, v skutocnosti je ten obsah stale malymi pismenami.


 [ Príspevkov: 13 ] 


Triedenie podľa textu



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

foobar2000 triedenie podla priecinka

v Audio programy

0

305

02.05.2010 9:03

Johnnny

V tomto fóre nie sú ďalšie neprečítané témy.

Pascal - triedenie podla jednotlivych poloziek záznamov

v Assembler, C, C++, Pascal, Java

8

515

08.02.2009 19:25

tominoZA

V tomto fóre nie sú ďalšie neprečítané témy.

Vkladanie textu podľa vzoru

v PHP, ASP

2

180

27.05.2012 22:27

xxx9955

V tomto fóre nie sú ďalšie neprečítané témy.

vypis textu podla vybranej polozky v selecte

v JavaScript, VBScript, Ajax

5

266

06.02.2010 22:41

1daemon1

V tomto fóre nie sú ďalšie neprečítané témy.

Odstránenie textu navyše z premennej podľa podmienky.

v PHP, ASP

3

274

01.01.2013 14:16

1daemon1

V tomto fóre nie sú ďalšie neprečítané témy.

Zmena textu a zanechani pozice v textu

v PHP, ASP

4

348

01.08.2009 21:26

Tominator

V tomto fóre nie sú ďalšie neprečítané témy.

WIN7-usporiadanie podla typu a zaroven podla datumu

v Operačné systémy Microsoft

1

341

10.10.2011 17:16

Logik

V tomto fóre nie sú ďalšie neprečítané témy.

Rozsirene triedenie

v PHP, ASP

6

273

10.12.2010 10:50

psm

V tomto fóre nie sú ďalšie neprečítané témy.

Pascal - triedenie

v Assembler, C, C++, Pascal, Java

6

1320

05.03.2009 2:36

TrSek

V tomto fóre nie sú ďalšie neprečítané témy.

Triedenie pesničiek

v Ostatné programy

1

130

04.06.2014 7:47

mirom

V tomto fóre nie sú ďalšie neprečítané témy.

Triedenie čísliel

v JavaScript, VBScript, Ajax

1

402

23.03.2009 21:18

myxall

V tomto fóre nie sú ďalšie neprečítané témy.

Thunderbird - triedenie spamu

v Sieťové a internetové programy

4

244

15.02.2010 20:07

Blackshadow

V tomto fóre nie sú ďalšie neprečítané témy.

Pascal - triedenie + vyhladavanie

v Assembler, C, C++, Pascal, Java

0

208

22.11.2012 17:21

Reason166

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA - triedenie cisiel

v Assembler, C, C++, Pascal, Java

12

1423

24.10.2010 13:00

coldak

V tomto fóre nie sú ďalšie neprečítané témy.

Zlé triedenie...prosím pomôžte!!

v Assembler, C, C++, Pascal, Java

22

558

04.05.2010 22:21

klaudia

V tomto fóre nie sú ďalšie neprečítané témy.

mysql - triedenie výsledkov po slovensky

v Databázy

5

929

21.01.2010 11:52

Merlin_sk



© 2005 - 2017 PCforum, edited by JanoF