Šta je novo?

PHP MySQL Pocetnicki Problem sa prikazivajem podataka

ozz

Slavan
Učlanjen(a)
18.08.2005
Poruke
11
Poena
304
Vako,
Imam sait na kome se nalazi 300 redova podataka izvucenih iz baze ali problem se javlja kada pokusam da odvojim te podatke u nekih 25 kategorija po pocetnim slovima (koja imam odvojena u posebnoj koloni tako da svaka kategorija pored svih podataka ima i kolonu sa slovom kojem pripada). Da nebi pravio 25 upita i tako "ubio" svaki server na kome hostujem sait ja bi napravim jedan upit, povucem sve podatke odjedanput i onda ih prikazujem u zavisnosti od vrednosti kolone sa slovom kojem pripada.
Verujem da je resenje vise nego jednostavno ali... Pocetnik ko sto rekoh...

Unapred Hvala na Odgovoru.
 
Otkucaj u MYSQL konzoli:
Kod:
describe nazivbaze;
i prekopiraj rezultat ovamo (nisam bas skontao sta zelis).
 
To mogu tek sutra ali cu probati da objasnim sto bolje mogu ovako
imam tabelu koju zelim da prikazem na stranici, tabela se sastoji od tri kolone ID,ime,slovo_kojem_pripada.
"ime" je ono sto zelim da prikazem na strani i da ga sortiram po "slovo_kojem_pripada". pa da nebi pravio 25 upita ka bazi sa WHERE slovo_kojem_pripada = 'nesto' mislio sam da pozovem jedanput celu tabelu pa da prikazujem selektivno na 25 mesta, tipa da pustim da se ponavlja pa da unutar tog while izraza ubacim if ($row_baza['slovo_kojem_pripada'] == 'neko_slovo') pa da mi prikaze samo parce tabele koji odgovara if upitu pa na drugom mestu ubacim drugo slovo ... samo sto onako kako sam probao nece :D
nadam se da sam malko bolje pojasnio.
 
"ime" je ono sto zelim da prikazem na strani i da ga sortiram po "slovo_kojem_pripada".

Ne znam da li sam dobro ukapirao sta zelis da uradis, posto citajuci ceo tekst poruke malo sam se izgubio, ali ima vec funkcija koja to radi

koristi:

$ispis = mysql_query("SELECT ime FROM ime_tabele ORDER BY slovo_kojem_pripada");

Na ovaj nacin dobijas ispis imena sortirana po slovu_kojem_pripada

Ako si to trazio WHERE ti ne treba uopste.
 
znam, ako to uradim dobicu sve iz tabele sortirano po toj tabeli, ali meni to nije problem. Problem je u selektivnom prikazivanju na vise mesta na istoj strani. znaci da delove rezultata upita prikazem na 25 mesta na istoj strani. ne ceo upit odjedanput nego deo koji ima vrednost slova_kojem_pripada recimo 'A' da prikazem na jednom mestu a deo sa 'B' Na drugom ...
 
Onda iscitaj jednom iz tabele ono sto ti treba za tu stranu, ubaci to u niz i onda biraj kad ti sta treba iz niza i to ispisi.
 
Poslednja izmena:
tako sam i ja mislio samo sto imam problem sa sintaksom :wall:
na to sam mislio kada sam rekao pocetnicki problem :D:S:
kako da napravim niz. unutar mogu da ubacim if (tolko znam :) ) samo mi je prob kako da napravim niz da mi izbacuje red za redom iz baze... a da mogu da iskoristim na vise mesta posto sam koristio Repeat Region iz dream wevera ali on moze da poztoji samo jedan na istoj stranici a meni treba 25 kom.
 
Poslednja izmena:
$pretraga = "SELECT * FROM ime_tabele";
$rezultat_pretrage = mysql_query($pretraga);


while ($red = mysql_fetch_array($rezultat_pretrage))
{
if ($red[ime_kolone] == $neka_vrednost)
...
uradi nesto
...
else
...
uradi nesto drugo
...
}
 
Uff.
Jos jedan problem iskoristio sam kod koji je postovan gore i sada mogu da ispisem jedno slovo, problem se javlja kada pokusam da iskoristi isti kod dva puta na istoj strani (naravno sa promenjenim slovom u if-u, da bi prikazao deo upita sa drugim slovom) jednostavno ne ispise nista kao da je promenjiva koja sadrzi rezultate upita posle prvog poziva sa while komandom prazna ... cim napravim jos jedan upit i isti kod prausmerim da uzima podatke iz tog drugog upita sve radi bez problema.
sta se desava sa rezultatima upita posto je jedanput iskorisceni dali promenjiva koja ih sadrzi ostaje ista ili se menja ??? kod koji je postovan gore nije modifikovan (osim imena promenjivih).:crash:
 
onda malcice komplikovanije

PHP:
$pretraga = "SELECT * FROM ime_tabele";
$rezultat_pretrage = mysql_query($pretraga);
$broj_elemenata=mysql_numrows($rezultat_pretrage);

$i=0;

while ($i < $broj_elemenata)
{
    $neka_vrednost=mysql_result($rezultat_pretrage,$i,"ime_kolone");

 ...
pa sada uporedi $neka_vrednost i iskoristi gde ti treba
...

$i++;
}


Javi samo da li si uspeo!
 
Uspeo. sam hvala!
Samo jedno pitanje dali mysql_result funkcija poziva podatke direktno iz baze ili promenjive koja vec ima te podatke u ovom slucaju $rezultat_pretrage? Tj dali svaki put kada napisem mysql_result ponovo salje bazi upit?
 
kada koristis mysql_query funkciju tada se cita iz baze.

mysql_result cita iz promenjive!
 
Vrh Dno