Autor | Zpráva | ||
---|---|---|---|
S.T.A.L.K.E.R Profil * |
#1 · Zasláno: 21. 6. 2007, 20:19:37
Potreboval bych poradit...
..mam databazi s produktama, na php strance je vypisuju do nejaky struktrury pod sebe ( proste - > vyrobek 1, u toho je obrazek, popis a jedna polozka vypisu z db je i odkaz. A ted problem - jde nejak udelat aby se po kliknuty na odkaz preslo na stranku s obrazkama, ale jen k danemu produktu..Jde mi o to, ze kdyz se nejaky produkt prida, tak kdyby to odkazovalo na normalni html stranku tak ta tam i po vymazu zustane...stejne tak kdyz se prida produkt, tak se ta html stranka musi vytvorit. |
||
Taps Profil |
#2 · Zasláno: 21. 6. 2007, 20:23:44
A co kdyby jsi měl ještě jednu tabulku s názvem obrázek,kde by se ti ukládala cesta obrázků a id_vyrobků, po kliknutí by se pak zobrazil obrázek k danému id.
|
||
S.T.A.L.K.E.R Profil * |
#3 · Zasláno: 21. 6. 2007, 20:38:28
takze nejak takhle - jako administracni rozhrani pro nahravani obrazku by se udelala php stranka se selectem, ktery by se naplnoval z tabulky nabidka ze sloupce nazev_vyrobku a input - file pro nahrani cesty..
pak v db vytvoreni tabulky treba se sloupcema id, nazev, img? posleze by se to melo vypisovat asi nejak takhle? <table> <?php $result = mysql_query("SELECT img FROM img_produkty"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td>%s</td>", $row['img']); } mysql_free_result($result); ?> |
||
S.T.A.L.K.E.R Profil * |
#4 · Zasláno: 21. 6. 2007, 20:42:15
sorry ten vypis treba takhla?
<table> <?php $result = mysql_query("SELECT img FROM img_produkty, nabidka WHERE nabidka.nazev_vyrobku=img.nazev"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td>%s</td></tr>", $row['img']); } mysql_free_result($result); ?> </table> |
||
Taps Profil |
#5 · Zasláno: 21. 6. 2007, 20:44:24 · Upravil/a: Taps
Pokud načítáš cestu obrázků z db tak musíš napsat <img src='$row["img"]'>
|
||
S.T.A.L.K.E.R Profil * |
#6 · Zasláno: 21. 6. 2007, 20:53:48
a nebo takhle ne? <td><img src="%s"></td> </tr>", $row['img']
a jeste jedna nejasnost, kdyz teda kliknu na ten odkaz, dejme tomu u vyrokbu jmenem vyrobek_10, tak se to bude odkazovat na jednu jedinou stranku u vsech vyrobku, na ktery bude ten dotaz pro vypis? a jak pozna, ze chci zobrazit na strance, treba img_velke, zrovna obrazky vyrobku_10 |
||
Taps Profil |
#7 · Zasláno: 21. 6. 2007, 21:06:09
pomocí id v tabulce, obrázek budeš mít např.v tabulce obrázek-> id_obrazek.Mám takové tušení, že by to mohlo fungovat podobně jako komentáře u článků. Vypíšeš zkrátka z jedné tabulky id a z druhé tabulky id_obrazek. id a id_obrazek budou stejné.
|
||
S.T.A.L.K.E.R Profil * |
#8 · Zasláno: 21. 6. 2007, 22:49:55
tak jsem vytvoril novou tabulku img_produkty, do ktere do sloupce id_nazev zapisuju pomoci <selectu> value hodnotu id z tabulky nabidka..tzn vypada to asi takto -> tabulka nabidka tam sloupce id, nazev,.....atd a tabulka img_produkty...ta vypada takto id, id_nazev, img_big...
id z tabulky nabidka a id_nazev souhlasi jen se mi nedari vypsat obrazky urciteho produktu. odkaz jsem nastavil u jednoho produktu napr. vyrobek_1 na img_velke.php s tim ze chci videt obrazky produktu 1...a nic chyba - Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource dotaz vypada takto - > $result = mysql_query("SELECT img_big FROM img_produkty WHERE img_produkty.id_nazev=nabidka.id"); |
||
Taps Profil |
#9 · Zasláno: 22. 6. 2007, 07:41:45
zkus to takto:
SELECT nabidka.id, img_produkty.id_nazev WHERE img_prodkuty.id_nazev=nabidka.id Zkus pohledat na netu příkaz join a union. |
||
S.T.A.L.K.E.R Profil * |
#10 · Zasláno: 22. 6. 2007, 10:34:39
tak dotaz už jede, ale chyba je v tom, že to vypisuje obrázky všech produktů
|
||
S.T.A.L.K.E.R Profil * |
#11 · Zasláno: 22. 6. 2007, 10:36:12
a jak vlastně správně docílit, aby se ze stránky nabidka převzalo id do stránky img_produtky
|
||
Taps Profil |
#12 · Zasláno: 22. 6. 2007, 11:38:29
S.T.A.L.K.E.R
Pomocí metody GET $id=$_GET['id']; mělo by to fungovat |
||
S.T.A.L.K.E.R Profil * |
#13 · Zasláno: 22. 6. 2007, 14:40:28
tak zase o krok dale....
kdyz to tam dam na tvrdaka cislo id, tak to facha.. <?php mysql_connect("localhost", "jmeno", "heslo") or die("Nelze se spojit"); mysql_select_db("databaze"); mysql_query("set names utf8"); $result = mysql_query("SELECT * FROM img_produkty, nabidka"); while ($row = mysql_fetch_array($result)) ?> <table border="1"> <?php $id=$_GET['id']; $result = mysql_query("SELECT img_big FROM img_produkty WHERE id_nazev=23"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td><img src="%s"></td></tr>", $row['img_big']); } mysql_free_result($result); ?> ale kdyz tam dam ten dotaz na volani id produktu odkazu na ktery jsem kliknul tak to vypisuje vsechny img... <?php mysql_connect("localhost", "jmeno", "heslo") or die("Nelze se spojit"); mysql_select_db("databaze"); mysql_query("set names utf8"); $result = mysql_query("SELECT * FROM img_produkty, nabidka"); while ($row = mysql_fetch_array($result)) ?> <table border="1"> <?php $id=$_GET['id']; $result = mysql_query("SELECT img_big FROM img_produkty WHERE id_nazev=nabidka.id GROUP BY nabidka.id"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td><img src="%s"></td></tr>", $row['img_big']); } mysql_free_result($result); ?> zda se ze to porad nedokaze prevzit id |
||
S.T.A.L.K.E.R Profil * |
#14 · Zasláno: 22. 6. 2007, 17:03:49
uz mi doslo, proc to vypisuje na ten dotaz vsechny obrazky....protoze kdyz ten dotaz napisu takto: ...... WHERE img_produkty.id_nazev=nabidka.id - tak vlastne vsechny obrazky se rovnaji takoveto podmince...
|
||
Taps Profil |
#15 · Zasláno: 22. 6. 2007, 20:40:49
S.T.A.L.K.E.R
Musíš to id nějakým způsobem odeslat. Pak by se ti vypsal jen produkt + obrázek |
||
S.T.A.L.K.E.R Profil * |
#16 · Zasláno: 23. 6. 2007, 10:32:08
no a to je prave to co nefunguje....kdyz pridam do nabidka.php radek $id=$_POST['id']; a v img_produkty.php je $id=$_GET['id']; tak to stejne nefunguje...
|
||
Taps Profil |
#17 · Zasláno: 23. 6. 2007, 18:44:24
a co třeba ?
$id_nazev=$_POST['id'] |
||
S.T.A.L.K.E.R Profil * |
#18 · Zasláno: 23. 6. 2007, 18:49:46
a mám to dávat do img_produkty.php ne?
|
||
Taps Profil |
#19 · Zasláno: 23. 6. 2007, 19:15:30
S.T.A.L.K.E.R
jj |
||
S.T.A.L.K.E.R Profil * |
#20 · Zasláno: 23. 6. 2007, 19:19:57
a to bohuzel nejde
<?php $id_nazev=$_POST['id']; $result = mysql_query("SELECT img_big FROM img_produkty, nabidka WHERE img_produkty.id_nazev=nabidka.id"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td><img src="%s"></td></tr>", $row['img_big']); } mysql_free_result($result); ?> vypise to vsehcny obrazky |
||
BetaCam Profil |
#21 · Zasláno: 23. 6. 2007, 21:59:28
Pánové no já mám dost co to tady vymejšlíte za šílený, ale hlavně uplne nesprávný podmínky. Znáte alespon základy SQL??
WHERE img_produkty.id_nazev=nabidka.id co je to za kravinu?? Takhle to vypíše všechny obrázky ke všem produktům. Proč ... ?? No stačí logicky myslet. nabitka.id je PK a img_produkty.id_nazev je FK. Takže touhle vaší podmínkou vlastne děláte INNER JOIN. $id=$_GET['id']; tak to stejne nefunguje SELECT img_big FROM img_produkty, nabidka WHERE img_produkty.id_nazev=nabidka.id pročpak to asi nefunguje ?? Zahledte se na ten SELECT pořádně ... BINGOOOO ano opravdu tento select neobsahuje proměnou $id tak jak by to asi mohlo fungovat. SELECT img_big FROM img_produkty, nabidka Proč ty tabulky vůbec spojujete, když chcete vypsat jenom obrazky produktu?? pouzijte dotaz typu SELECT img_big FROM img_producty WHERE id_nazev = $id |
||
S.T.A.L.K.E.R Profil * |
#22 · Zasláno: 24. 6. 2007, 10:52:26
tak taky ne..
takhle: <?php $id=$_POST['id']; $result = mysql_query("SELECT img_big FROM img_produkty WHERE id_nazev = $id"); while ($row = mysql_fetch_array($result)) { printf ("<tr><td><img src="%s"></td></tr>", $row['img_big']); } mysql_free_result($result); ?> to vypisuje chybu když dám $id do ' ' takhle: $result = mysql_query("SELECT img_big FROM img_produkty WHERE id_nazev = '$id' "); tak to bohužel nevypíše nic.....zřejmě to nepřevezme id z daného produktu po kliknutí na daný odkaz.. |
||
BetaCam Profil |
#23 · Zasláno: 24. 6. 2007, 18:07:08 · Upravil/a: BetaCam
tak to bohužel nevypíše nic.....zřejmě to nepřevezme id z daného produktu po kliknutí na daný odkaz..
a opravdu to id tím odkazem posíláte?? $id = $_POST['id']; to to mate udelane tak ze kdyz kliknete na odkaz tak se to posila metodou post?? pokud chcete posílat ID pomocí odkazu musí odkaz být ve tvaru napřiklad example.com/img_produkty.php?id=22 kde 22 je číslo produktu v img_produkty.php pak máte přístupnou proměnou $_GET['id'] s kterou pak můžete pracovat tedy ji i vložit do vašeho SQL dotazu. Pokud, ale zavoláte pouze odkaz example.com/img_produkty.php tak proměná $_GET['id'] vůbec neexistuje takže sní logicky nemůžete pracovat!! |
||
S.T.A.L.K.E.R Profil * |
#24 · Zasláno: 24. 6. 2007, 19:36:00
BetaCam
ano, ano, ano....toto img_produkty.php?id=22 mi tam chybělo ! včera jsem si říkal, že to dnes tímto způsobem zkusím....ale nakonec jsem na to v zápalu práce nad jiným problémem úplně zapomněl....děkuji za "nakopnutí" správným směrem, jak v tomto problému, tak i s těma přepínačema....opravdu dokážete člověku poradit...ještě jednou děkuji. |
||
Časová prodleva: 18 let
|
0