Jump to content
php.lv forumi

Dažādu Sadaļu Konspektējums


raymo

Recommended Posts

ir saits. ir dažādas datubāzītes uz viena bezmaxas mysql servera (www.freesql.org - bet tas nav būtiski)

tātad saits ir ar informatīvu struktūru un ar dažādām tēmām - katrai tēmai ir sava datubāze :

art_news (tjipa domaats article news)

art_pc

art_games

...

u.t.t

Vis ir labi, es protu nolasīt piemēram noteiktu skaitu ierakstu, pat sakārtojot pēc datuma, ja jāizvada ieraksti no vienas DB piem:

<code><font color="#000000">

<font color="#0000CC"><?
$link </font><font color="#006600">= </font><font color="#0000CC">[url=http://lv.php.net/mysql_connect]mysql_connect[/url]</font><font color="#006600">(</font><font color="#CC0000">"$host"</font><font color="#006600">, </font><font color="#CC0000">"$user"</font><font color="#006600">, </font><font color="#CC0000">"$pass"</font><font color="#006600">)
  or die(</font><font color="#CC0000">"Nevar piesleegties MySQL : " </font><font color="#006600">. </font><font color="#0000CC">[url=http://lv.php.net/mysql_error]mysql_error[/url]</font><font color="#006600">());
 </font><font color="#0000CC">[url=http://lv.php.net/mysql_query]mysql_query[/url]</font><font color="#006600">(</font><font color="#CC0000">"USE $db"</font><font color="#006600">);
 </font><font color="#0000CC">$result </font><font color="#006600">= </font><font color="#0000CC">[url=http://lv.php.net/mysql_query]mysql_query[/url]</font><font color="#006600">(</font><font color="#CC0000">"SELECT * FROM art_news ORDER by datums DESC;"</font><font color="#006600">)
 or die(</font><font color="#CC0000">"Nevar atrast datubāzes tabulu! Pamēģini vēlāk."</font><font color="#006600">);
 while (</font><font color="#0000CC">$res </font><font color="#006600">= </font><font color="#0000CC">[url=http://lv.php.net/mysql_fetch_array]mysql_fetch_array[/url]</font><font color="#006600">(</font><font color="#0000CC">$result</font><font color="#006600">)) {
 if (</font><font color="#0000CC">$k</font><font color="#006600">==</font><font color="#0000CC">5</font><font color="#006600">) break;
 </font><font color="#0000CC">$k</font><font color="#006600">=</font><font color="#0000CC">$k</font><font color="#006600">+</font><font color="#0000CC">1</font><font color="#006600">;
 </font><font color="#FF9900">//Skaitam komentus
 </font><font color="#0000CC">$query </font><font color="#006600">= </font><font color="#CC0000">"SELECT * FROM comm_news WHERE raxta_nr=$res</font><font color="#006600">[</font><font color="#CC0000">0</font><font color="#006600">]</font><font color="#CC0000">"</font><font color="#006600">;
 </font><font color="#0000CC">$query_result_handle </font><font color="#006600">= </font><font color="#0000CC">mysql_query </font><font color="#006600">(</font><font color="#0000CC">$query</font><font color="#006600">);
 </font><font color="#0000CC">$num </font><font color="#006600">= </font><font color="#0000CC">mysql_num_rows </font><font color="#006600">(</font><font color="#0000CC">$query_result_handle</font><font color="#006600">);
 echo </font><font color="#CC0000">"<table class=T cellpadding=0 cellspacing=0 align=center class=t width=80%>"</font><font color="#006600">;

</font><font color="#FF9900">// un te turpinaas visaadi sviestaini dizaina elementi, bet nu doma ir izteikta augshaa !
</font><font color="#0000CC">?>
</font>
</font>
</code>

Jautājums jums gudrie prāti: Kā panākt lai vērtības tiek izvilktas no visām DB vienlaicīgi, tad salīdzināti datumi un tikai tad izvadīts pašā sākumlapā tas raksts kuram tuvākais datums neņemot vērā tēmu (tās mixējas, kā piemēram pods.lv), bet tikai šo datumu?

 

thx ka uzklausiji!

Link to comment
Share on other sites

Mans domaat, ka jaadara bik savaadaak, vismaz taa dariitu es...

 

Njemam visus rakstus gaazham iekshaa vienaa tabulaa, kur katram rakstam ir papildus laucinjsh, kas apziimee kategoriju, piem

1->News

2->PC

3->Games

utt

 

taadaa gadiijumaa ljoti viegli izvilkt gan vispaar n peedeejos ierakstus, gan n peedeejos ierakstus konkreetaa kategorijaa, resp.

 

select kautkastur from raksti order by datums desc limit n

//taa varam izvilkt peedeejos n ierakstus neskatoties uz kategorijaam

 

un

 

select kautkastur from raksti where kat='kategorijas apziimeejums' order by datums desc limit n

//taa izvelkas peedeejie n ieraksti konkreetaa kategorijaa

 

*** Par kategorijas apziimeejumu daudziem trakoti patiik izmantot pilnu kategorijas nosaukumu, kas personiigi man liekas kaukaa liiki... pac parasti izmantoju kategorijas id vai sliktaakajaa gadiijumaa kautkaadu keywordu... katraa zinjaa dari kaa teu labaak patiik :)

Link to comment
Share on other sites

Mans domaat, ka jaadara bik savaadaak, vismaz taa dariitu es...

 

Njemam visus rakstus gaazham iekshaa vienaa tabulaa, kur katram rakstam ir papildus laucinjsh, kas apziimee kategoriju, piem

1->News

2->PC

3->Games

utt

 

taadaa gadiijumaa ljoti viegli izvilkt gan vispaar n peedeejos ierakstus, gan n peedeejos ierakstus konkreetaa kategorijaa, resp.

 

select kautkastur from raksti order by datums desc limit n

//taa varam izvilkt peedeejos n ierakstus neskatoties uz kategorijaam

 

un

 

select kautkastur from raksti where kat='kategorijas apziimeejums' order by datums desc limit n

//taa izvelkas peedeejie n ieraksti konkreetaa kategorijaa

 

*** Par kategorijas apziimeejumu daudziem trakoti patiik izmantot pilnu kategorijas nosaukumu, kas personiigi man liekas kaukaa liiki... pac parasti izmantoju kategorijas id vai sliktaakajaa gadiijumaa kautkaadu keywordu... katraa zinjaa dari kaa teu labaak patiik :)

Hmm tavs variants tieshaam izskataas daudz eertaaks, elestiigaaks u.t.t Par cik nekas svariigs tur nav saglabaajies jaadropo vien buus nost taas vecaas un jaagaazh visi raxti vienaa :) Turklaat jau sen gribeeju dazhaadus papildus laucinjus piem. padoms/oft/spams un skjirot arii peec tiem...

 

paldies

Link to comment
Share on other sites

Ja ir MySQL 4.x tad var lietot UNION http://www.mysql.com/doc/en/UNION.html

 

Ja nav.

Var arii no katras tabulas noselecteet 10 ierakstus tad tad samest tos masiivaa kur masiiva keys ir attieciigaa ieraksta laiks $zina[2003-01-21 12:34:34] un veeriiba attieciigi selectaatais $rows

 

Uztaisiit masiivam ksort http://lv.php.net/ksort un array_reverse http://lv.php.net/array-reverse

 

Un izgaazt pirmos 10 ierakstus.

Link to comment
Share on other sites

×
×
  • Create New...