ugrás a tartalomhoz

Egyszerű hozzászólás készítése

GreenEar · 2013. Jún. 9. (V), 19.25
Sziasztok

Újból itt vagyok egy újabb kérdéssel.

A kérdésem az lenne hogy hogyan indúljak neki hozzászólás készítéséhez.

Az alap amivel most foglalkozok, az annyi hogy mysql-ben van lementve kép név, és a tábla tartalmazza a kép adatait. feltöltő neve, feltöltés ideje stb. Ha a weboldalon valaki rákattint a képre akkor az megnyitja a többi hozzá tartozó adatot. Eddig ez nem okozott gondot, viszont szeretném megoldani hogy ott megjelenjen egy form, betudnak írni nevet és egy rövid kommentet, majd miután elküldte a kedves user a formot, az megjelenik a kép adatainál. Egy sima UPDATE parancsal megoldható lenne a dolog, mert hoztam létre egy feladó és komment oszlopot mysql-ben, oda be is rakta, le is kérte rögtön az adatokhoz, de ha valaki ír be másik kommentet akkor az UPDATE ismét lefut és nem hozzáírja az új kommentet, hanem módosítja azt.

A kérdésem az lenne hogy hogyan szokták megoldani ilyene setben, hogy a felhasználó tudjon kommentelni. Fontos megjegyeznem hogy a hozzászzólás nem lesz korlátozva, tehát nem kell hozzá belépni stb. Mivel csak egy gyakorló feladat így nem bonyolítom belépéssel ellenőrzéssel stb.

mysql táblák összekapcsolásával menne a dolog csak? Vagy megoldható egy táblával is?

Előre is köszi mindenkinek aki megindít az úton egy kissebbfajta seggberúgással!
 
1

Üdv

Alex Black · 2013. Jún. 9. (V), 19.40
Nekem is volt ehhez hasonló dolgom,bár én hirdetéseket készítettem így nem pedig postokat.De a lényeg ugyanaz én összekapcsolással oldottam meg nekem be vált a dolog.
Én név szerint párosítottam őket igy egy ember 100 hirdetést is feladhatott,mellette jelezvén a hirdetését,amely más és más volt.De nem írta felül az előzőt. FOREIGN KEY & REFERENCES segítséget nyújthat,én ezzel oldattam meg :)
2

Foreign

GreenEar · 2013. Jún. 9. (V), 19.56
Azért akartam elkerülni a tábla összekapcsolást mert azzal még nem foglalkoztam, bár az idegen kulcsos dologról egész jó leírásokat találtam, és nem is tűnik annyira bonyolúltnak. Alapvetően ugyanazt kell nekem is összehozni mint neked a hirdetéseknél.

A táblák összekapcsolásával kapcsolatban tudsz valamilyen leírást a neten? a google-ben találtam sokat de hátha van olyan ami egyszerű leírás és elkerülte a figyelmemet....
4

SQL

Alex Black · 2013. Jún. 10. (H), 01.51
Ezt találtam ami free és olvasható.
http://dihunor.mag.ro/laborok/0910/XII%20E/php%20&%20MySQL%20telefonkonyv.pdf
Rövid de gyakorolhatsz rajta
http://www.inf.u-szeged.hu/~gnemeth/adatbgyak/gyak8.pdf
Bár mialatt gyakoroltam az SQL-t összekapcsolás helyett használtam ilyet is pl :
SELECT alkategoriak.id, kategoriak.id
FROM alkategoriak, kategoriak
WHERE kategoriak.id = alkategoriak.id
7

Ez teljesen azonos a join-os

MadBence · 2013. Jún. 10. (H), 15.46
Ez teljesen azonos a join-os megoldással, az egyedüli különbség a szintaktikában van. A háttérben ez is valamilyen fizikai join operátorra fordul, de nem nagyon találtam a dokumentációban rá utalást, hogy milyeneket támogat, így feltehetően valamilyen nested loop joint használhat (szóba jöhet még a hash join, illetve a merge join).
3

hirdetési oldal

GreenEar · 2013. Jún. 9. (V), 19.59
szívesen megnézném az említett hirdetéseket, hogy hogyan működnek élesben.
5

localhostos

Alex Black · 2013. Jún. 10. (H), 01.52
Az még localhoston volt :)
De megkereshetem neked a .sql fájlt ha akarod,és fel dobható localra tesztelés gyanánt.
6

nem fontos

GreenEar · 2013. Jún. 10. (H), 11.38
nem fontos, a pdf-ek úgy látom elég jól taglalják a dolgokat, átrágom magam rajta.

Ha jól értem a lekérdezésnél nem a táblákat kapcsoltad össze hanem a lekérdezésben oldottad meg hogy a 2 táblából kérje le az adatokat, méghozzá id alapján párosítsa.

Ez jobban tetszik mint a táblák összekapcsolása.
8

RE

Alex Black · 2013. Jún. 10. (H), 19.39
Hát kinek melyik hogyan fekszik,bár ha egy ember aki például regisztrált felhasználó foglalt usernével ott nem párosítottam ID alapján mivel ha van egy felhasznalok és egy postok tábla ha ID vel oldom meg akkor id pl : 1-1 igy a postoknál a primary keynél duplicate lenne és nem engedné a új postot felvinni db-be ott én a nevet párosítottam össze a táblák között azok unique-t kaptak,a primary maradt az ID. Igy egy user a nevével sok postot írhat probléma nélkül.
9

felhasznalok és egy postok

Poetro · 2013. Jún. 10. (H), 20.47
felhasznalok és egy postok tábla ha ID vel oldom meg akkor id pl : 1-1 igy a postoknál a primary keynél duplicate lenne és nem engedné a új postot felvinni db-be

Ez így ebben a formában nem igaz. A felhasználó ID-je ne legyen primary key. Az legyen csak sima index. És akkor össze lehet kapcsolni a két táblát, és egy felhasználó több hozzászólást is létrehozhat.
10

re

Alex Black · 2013. Jún. 10. (H), 21.19
Köszönöm a tanácsot,megfogadom.
"Az ember holtáig tanul".
Remélem annyira durván nem vezettem el a kérdezőt.
Nekem is van mit elsajátítanom még :)