Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Spaliss 29. 10. 2014, 12:23:04

Název: Tahání dat z MySQL databáze
Přispěvatel: Spaliss 29. 10. 2014, 12:23:04
Ahoj všem,
potřebuji vytáhnout z databáze data poslední objednávky na mém eshopu.
A to číslo produktu, číslo objednávky a email klienta.

Z databáze se mi daří vytáhnout číslo poslední objednávky z tabulky "oxorder".
Ostatní data však vypisuje nahodile. Předpokládám že podle čísla objednávky bych mohl vytáhnout i email klienta, který je ve stejné tabulce. Číslo výrobku je pro změnu v jiné tabulce "oxarticles".

S tímto kódem úspěšně tahám číslo poslední objednávky:
Kód: [Vybrat]
$sql = "SELECT OXORDERNR,OXBILLEMAIL,OXARTNUM FROM oxorder,oxarticles ORDER BY OXORDERNR DESC LIMIT 5";
Má někdo návrh řešení, které bych mohl použít?
Díky za rady :)
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: Petr 29. 10. 2014, 12:35:27
Přes jakou hodnotu máš spojené tabulky oxorder,oxarticles ? Takhle ti to provádí cross join.
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: roghir 29. 10. 2014, 12:40:41
Kup si knihu mySql za 21 dni. Predpokladam, ze polozky objednavky jsou v jine tabulce, tudiz by mely byt spojeny pres neco (id objednavky) mezi ORDER a ORDER_ITEMS.

Nicmene me spise zarazil ten email. Predpokladam, ze tabulka OXORDER obsahuje jen vlastnostni spjate s objednavkou a data o uzivateli budes mit treba v tabulce PERSON, pricemz bude existovat vazba mezi OXORDER a PERSON (trebaze v OXORDER bude sloupec PERSONID s vazbou na primarni klic tabulky PERSON).
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: Rejpal 29. 10. 2014, 12:41:45
Řešení je jednoduché:
1) naučit se nějaký základ o relačních databázích
2) naučit se pracovat s MySQL
3) naučit se zpracovávat výsledky z MySQL třeba v PHP (soudě podle Vašeho příkladu)

Pokud jste již někdy slyšel o Google, pak Vás zřejmě napadne si to tam vyhledat. Pokud Vám pak něco KONKRÉTNÍHO nebude jasné, vraťte se sem pro radu. Řešení na míru bez znalosti db schématu a dalších návazností nemají smysl a Vám by nepomohla k pochopení problematiky.
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: to_je_jedno 29. 10. 2014, 13:05:34
 ???
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: Lol Phirae 29. 10. 2014, 13:18:50
Radši nic neradit, ještě vám pak vynadaj (http://forum.root.cz/index.php?topic=9958.msg110145#msg110145)  ::) :o
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: robin martinez 29. 10. 2014, 15:36:20
jak koukam, tak PHP muze dnes fakt delat kazdej...
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: robin martinez 29. 10. 2014, 15:37:46
ale jinak abych jen nekritizoval, ten problem, ktery popisujes jsou NAPROSTE zaklady SQL. Jak bylo receno - dela se to spojovanim tabulek, nezname sice schema tve databaze, ale ocividne nebude spravne.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: karel 29. 10. 2014, 21:12:03
upada to upada, za dnesek se tu na foru rozthl pytel s debilnimi dotazy
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: h7 29. 10. 2014, 21:35:44
Radši nic neradit, ještě vám pak vynadaj (http://forum.root.cz/index.php?topic=9958.msg110145#msg110145)  ::) :o

Nebo tady (http://www.abclinuxu.cz/poradna/linux/show/397197), kde tazatel kopíruje bezhlavě příkazy a důsledky ... ;)
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: dsfasdfasdf 29. 10. 2014, 21:39:40
1) je cislo objednavky rostouci? pokud ano tak nejnovejsi objednavka treba:
select max(oxordernr) from oxorder

2) provazani tabulek oxorder, oxarticles pro posledni objednavku, napriklad

SELECT OXBILLEMAIL,OXARTNUM FROM oxarticles WHERE OXORDERNR IN (select max(oxordernr) from oxorder)
Název: Re:Začátečník :) Jak tahat potřebná data z mysql databáze?
Přispěvatel: Hmmm 30. 10. 2014, 11:14:48
Kup si knihu mySql za 21 dni. Predpokladam, ze polozky objednavky jsou v jine tabulce, tudiz by mely byt spojeny pres neco (id objednavky) mezi ORDER a ORDER_ITEMS.

Nicmene me spise zarazil ten email. Predpokladam, ze tabulka OXORDER obsahuje jen vlastnostni spjate s objednavkou a data o uzivateli budes mit treba v tabulce PERSON, pricemz bude existovat vazba mezi OXORDER a PERSON (trebaze v OXORDER bude sloupec PERSONID s vazbou na primarni klic tabulky PERSON).
Budem hovorit vo vseobecnosti, zo svojich skusenosti, tabulka objednavky musi obsahovat aj data zakaznika a celkovo vsetky data, ktorych hodnoty sa mozu po case menit, pretoze je pri objednavke nutne mat data z doby, kedy objednavka vznikla a nie aktualne data. To sa tyka udajov o zakaznikovi, udajov o tovare (ceny, kod, ...), o sposobe dopravy a tak dalej.

V opacnom pripade si e-shop koleduje o pruser ak nahodou dojde k padu niektorych tabuliek alebo zakaznik po objednani zmeni svoje udaje alebo obchodnik zmeni ceny tovaru.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Rejpal 30. 10. 2014, 11:51:56
Ta rada od Hmmm je příliš předčasná a sofistikovaná vzhledem k tomu, že tazatel ještě neprošel přes úskalí joinů a nejnovější záznam tahá s pomocí limit 5.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: tommm 30. 10. 2014, 12:47:41
A takhle to dopada kdyz si kazdej ten svuj eshop woe postavi na nejakem polotovaru nebo hotovem reseni a nebo mu to udela znamej, kterej do toho prej taky dela ...

Jo takhle si zaplatit nekoho kdo udela co je potreba presne na miru vcetne reportingu. Ale to by stalo asi penize :D

Kdo setri ma za tri :)
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Kit 30. 10. 2014, 12:59:49
Pokud bychom neexperimentovali, měli bychom SW jen od megakorporací.

Na druhou stranu, když vidím názvy tabulek oxorder a oxarticles, tak se z toho oxypávám.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: tommm 30. 10. 2014, 13:02:00
Pokud bychom neexperimentovali, měli bychom SW jen od megakorporací.

Na druhou stranu, když vidím názvy tabulek oxorder a oxarticles, tak se z toho oxypávám.

Experimentovat je treba. A to nejen v IT. Ale asi na to je treba mit nejakej znalostni zaklad.
Ja si taky doma nestavim chemickou laborator ze sady "maleho chemika" a podle googlu nezkousim smichat "to s timhle co vono to udela" ...
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Kit 30. 10. 2014, 13:16:45
Experimentovat je treba. A to nejen v IT. Ale asi na to je treba mit nejakej znalostni zaklad.
Ja si taky doma nestavim chemickou laborator ze sady "maleho chemika" a podle googlu nezkousim smichat "to s timhle co vono to udela" ...

Ten znalostní základ je přece nutné procvičit experimentováním. Když si ten znalostní základ vezme ze špatného zdroje, tak i to experimentování dopadne špatně. Nevím, kdo mu poradil to debilní "ox" na začátku každého názvu, ale rozumné to rozhodně není.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Pavouk106 30. 10. 2014, 14:20:20
K tomu experimentování - s PHP (a tím i MySQL) jsem začal před deseti lety a víceméně v něm nic nedělal... První JOIN jsem nad více tabulkami dělal letos na jaře a samozřejmě napoprvé špatně... Jen experimentováním nebo čtením manuálů se taková situace dá řešit. Když má člověk na čem experimentovat (a nepodělat něco důležitýho), experimentování je vždy lepší než čtení. Experimentováním se dá přijít na to, jak to funguje. Čtením se dá přijít jen na to, jak to udělat aby to fungovalo.

Tudíž - experimentování je dobrý. Samozřejmě ne s plutoniem ve sklepě...
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: NooN 30. 10. 2014, 14:42:35

Ten znalostní základ je přece nutné procvičit experimentováním. Když si ten znalostní základ vezme ze špatného zdroje, tak i to experimentování dopadne špatně. Nevím, kdo mu poradil to debilní "ox" na začátku každého názvu, ale rozumné to rozhodně není.

POdla mna mu nikto neporadil. Podla mna ma hotovy komercny shop  a chce nieco dorobit
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: tommm 30. 10. 2014, 15:06:05
. Jen experimentováním nebo čtením manuálů se taková situace dá řešit. Když má člověk na čem experimentovat (a nepodělat něco důležitýho), experimentování je vždy lepší než čtení. Experimentováním se dá přijít na to, jak to funguje. Čtením se dá přijít jen na to, jak to udělat aby to fungovalo.

Tudíž - experimentování je dobrý. Samozřejmě ne s plutoniem ve sklepě...

Tak si snad nejdriv otevru w3schools, kliknu si na SQL sekci, projdu si to a pak si to vyzkousim. Jak zkouset neco kdyz nevi clovek co ma zkouset.

Navic kdyby si prosel i tyto zaklady a prisel s tim, ze se na to sice koukal, ale necemu nerozumi, tak mu nekdo poradi.

Ale napsat si o hotove reseni, aby se nekdo snazil za nej. Sorry ... To se da delat kdyz si to zaplatis a pak se teda nemusis starat.
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Rejpal 30. 10. 2014, 15:59:11
POdla mna mu nikto neporadil. Podla mna ma hotovy komercny shop  a chce nieco dorobit
Hlavně nám ale nedodal žádnou křišťálovou kouli, takže kromě tazatele nikdo neví:
- co tazatel ve skutečnosti chce udělat (imho neví, jen chce "aby to fungovalo" podle "představ")
- které kroky tazatel provedl a jak dopadly (imho žádné kroky neprovedl)
- jaké je schema projektu - domýšlet se, co, kde a v jaké formě se nachází, je jen obdoba vzdušných zámků. Radši se budu ale věnovat příjemnějším představám.

Dále pak tazatel ani nijak nepřispěl do diskuse a neosvětlil nic ani pidibaterčičkou. Doufám, že teď někde zalezlý tiše studuje základy SQL, ale přesto se obávám, že tomu tak nebude...

Než mu ale zatím někdo poradí, snad by někdo mohl poradit mě:

Potřebuji SW, který by se dal použít nejprve k vydělávání peněz a potom k prodeji jako celek. A BEZ JAKÉKOLIV PRÁCE Z MÉ STRANY, samozřejme. Proto prosím o:
- radu, čeho by se SW měl týkat (hlavně aby vydělával)
- naprogramování takového projektu (v čem, to je jedno, klidně to může být prasárna jako LAMP, ale hlavně, aby to vydělávalo)
- kontakty na někoho solventního, komu to půjde prodat (hlavně za hodně peněz)
Pokud vše půjde hladce, jsem ochoten přepustit cca 15% (spíš ale méně) z vydělaných prostředků na provize za vypracování projektu místním diskutérům. Možná i samotnému Rootu, aby měl nějaké aspoň malé příjmy a mohl vypnout reklamu i s tou adbločí lištou.

Poradíte a dodáte řešení? Díky!!!!!!!!
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: hawran neprihlaseny 30. 10. 2014, 16:34:36
...
Než mu ale zatím někdo poradí, snad by někdo mohl poradit mě:

Potřebuji SW, který by se dal použít nejprve k vydělávání peněz a potom k prodeji jako celek. A BEZ JAKÉKOLIV PRÁCE Z MÉ STRANY, samozřejme. Proto prosím o:
- radu, čeho by se SW měl týkat (hlavně aby vydělával) ...

Poradíte a dodáte řešení? Díky!!!!!!!!

No, to záleží na tom, jak jsi na tom se Starým a Novým Zákonem ...
Název: Re:Tahání dat z MySQL databáze
Přispěvatel: Rejpal 30. 10. 2014, 18:10:37
No, to záleží na tom, jak jsi na tom se Starým a Novým Zákonem ...

Výborně, děkuji, skvělá připomínka. Tím je vyřešena technologická platforma projektu: LAMP tam nebude, bude tam Cobol.