Topic: Del naujienų rodymo

Gal galite kas nors pagelbėti dėl naujienų. štai tarkim jau esu sukūręs lentelę MySQL duombazėje pavadinimu naujienos, kurioje yra tokios skiltys ir jose tekstai:

+--+----------------+----------+-----------+
|id | pavadinimas  | istrauka | naujiena  |
+--+----------------+----------+-----------+
|1  |pavadinimas1| istrauka1 |naujiena1|
+--+---------------+-----------+-----------+
|2  |pavadinimas2|istrauka2  |naujiena2|
+--+---------------+-----------+-----------+
|3  |pavadinimas3|istrauka3  |naujiena3|
+--+---------------+-----------+-----------+

Aš žinau kaip atvaizduoti puslapyje visus šiuos pavadinimus, bet aš nežinau kaip padaryti, kad pavyzdžiui suvedu http://www.mano-saitas.lt/naujienos.php?naujiena=3 ir man rodytų būtent 3 id iš lentelės duomenis. Jeigu http://www.mano-saitas.lt/naujienos.php?naujiena=2 suvesčiau rodytų 2 id duomenis. Na manau mintį pagavot.

Re: Del naujienų rodymo

La,

SELECT pavadinimas, istrauka, naujiena FROM lentele WHERE id = 3

Re: Del naujienų rodymo

Dėkui supratau dabar. Pagelbėjote man.

Re: Del naujienų rodymo

Sveiki. Prikeliu seną temą, kad nereikėtų kurti naujos.

šiuo metu bandau įsisavint MySQL ir PHP naudojimą, taigi pirmas dalykas kurį bandau sukurti yra naujienų skiltis ir man kyla keletas klausimų, dėl to, kaip reikėtų organizuoti lentelę duomenų bazėje.

Taigi turiu lentelę naujienos, kurią sudaro id, pavad, tekstas ir data stulpeliai.

Iš pradžių uždėjau ant id AUTO_INCREMENT'ą ir galvojau, kad nieko daugiau įpatingo nereiks. Tačiau, sakykim turim tokią lentelę:

id     pavad                 tekstas           data

1      pavadinimas1      tekstas1         data1
2      pavadinimas2      tekstas2         data2
3      pavadinimas3      tekstas3         data3
4      pavadinimas4      tekstas4         data4
5      pavadinimas5      tekstas5         data5

Taigi, jei ištrinsiu pvz. trečią naujieną, ir paskui vieną naujieną pridėsiu, gausis kažkas pan. į:

id     pavad                 tekstas           data

1      pavadinimas1      tekstas1         data1
2      pavadinimas2      tekstas2         data2
6      pavadinimas6      tekstas6         data6
4      pavadinimas4      tekstas4         data4
5      pavadinimas5      tekstas5         data5

Na žodžiu, ir jei taip pastovia,i tai ta lentelė bus netvarkinga, su padrikais indeksais ir pan. Taigi, nežinau kaip pasielgt, ar ieškot kažkokių būdų palaikyt tą lentelę tvarkingą, ar paprasčiausiai palikt tokiu principu ir tiesiog visada rikiuot viską pagal datą arba indeksą? O gal yra kitų, įprastų tokių duomenų organizavimo būdų?

Evaldas P.

Re: Del naujienų rodymo

tiap bus ir nieko tu cia nepakeisi :)
taip , tiesiog rikiuot pagal data / index arba pagal abu kartu kaip tik nori :)
koks tau skirtumas ID is eiles ar ne ? :)

Re: Del naujienų rodymo

Jeigu tu nenaudoji rikiavimo (ORDER BY) tai duomenys patekiami taip, kaip jie yra sura6yti failuose. MySQL'as rašo į failus netvarkingai todėl, kad siekiama kuo greičiau atlikti rašymo/skaitymo operacijas. Esmė, kad ištrynus įrašą, duomenų bazės failas(-ai) nėra perrašomi visiškai. Ta vieta, kur buvo trinamas įrašas, yra pažymima kaip laisva ir gali būti panaudota rašant naujus duomenis (todėl dažnai trinti duomenis yra taip lengva ir greita).

Taigi, ORDER BY yra labai natūralus ir geras būdas susirikiuoti duomenis taip kaip norima. Nereikia bijoti, kad pailgėja užklausa ar, kad gal kažkur tie duomenys ilgiau užlaiko prieš atidavima PHP kodui..

Re: Del naujienų rodymo

Viskas aišku, dėkui už atsakymą

Evaldas P.