1 (edited by addinol 2011-01-26 17:01:32)

Topic: PHP List

Sveiki, taigi turiu MySQL lentelę sudarytą iš 3 dalių:
Vardas    Pavardė   šalis   Reputation

Kaspar    Reinert     EE   982
Kasparas Reinert     LT   1047

Noriu padaryti php lentelę, jog rodytų visus (arba jeigu galima po 30 viename puslapyje, bet nežinau kaip tai padaryti, jei per sunku tai nereikia) rezultatus ir išlygiuotų juos pagal Reputation, mažėjančia tvarka, ir dar noriu jog kiekvienoje eilutėje užsidėti mažas paveiksliukas šiuo atveju šalies veliava, kuri būtų nustatyta pagal šalis rezultatą... Dar būtų neblogai jog prieš eilutę rodytų ir skaičių...

Galbūt užvestumėte mane ant kelio kur galėčiau rasti tutorialų, arba pavyzdžių tokiam dalykui pasidaryti ? o gal kas net galėtų pradžia duoti :)

Viskas atrodytų

1. LT:FLAG Kasparas Reinert 1047
2. EE:FLAG Kaspar    Reinert 982
3. LV:FLAG Kaspars   Reinert 823

čia internete atradau:

<html>
<body>
<?php
$username="username";
$password="password";
$database="your_database";

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM tablename";
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();
?>
<table border="0" cellspacing="2" cellpadding="2">
<tr>
<th><font face="Arial, Helvetica, sans-serif">Vardas</font></th>
<th><font face="Arial, Helvetica, sans-serif">Pavardė</font></th>
<th><font face="Arial, Helvetica, sans-serif">Reputacija</font></th>
</tr>

<?php
$i=0;
while ($i < $num) {

$f1=mysql_result($result,$i,"Vardas");
$f2=mysql_result($result,$i,"Pavarde");
$f3=mysql_result($result,$i,"Reputation");
?>

<tr>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
</tr>
</table>

<?php
$i++;
}
?>
</body>
</html>

Bet kaip dėl išdėstymo tvarkos, ir skaičių eilutės pradžioje su vėliava pagal šalis parametrą ?

Re: PHP List

Na as tau tik pasakysiu ko tau reikia:
del irasu kiekio: LIMIT
del isrykiavimo: ORDER BY

O paveiksliuka kaip ideti, manau turetum ir pats susiproteti. :)

P.S.  siaip ne nuo to pradedi mokindamasis programuoti.

3 (edited by addinol 2011-01-26 17:12:30)

Re: PHP List

Aš nesimokinu akivaizdžiai, ir manau man to neprireiks toliau gyvenime, tik dabar savo interesam darau, nes kaiką kitą sukūriau kas reikalauja mysql, o dabar ir webą pasiųlė padaryti :)

Beje, o kaip dėl LIMIT, jei tą LIMIT panaudosiu tai ką jis tiksliai padarys ? tik parodys 30 sakykim, o sekančius kur dės ?

tai turėtų būti taip ?

$query="SELECT * FROM tablename ORDER BY Reputation DESC LIMIT 30";

O dėl veliavų tikrai nežinau, nebent patikrinti

if(Country = LT)
{
$link = "<img src="flags/LT.jpg" border="0">"
}
elseif

ir tada dar 1 eilutę sukurti, kurioje echo $link ?

(Beje kodėl rodo jog $link eilutė neveikia ?

Re: PHP List

Vat naglumas, nesimokinu ir nesimokinsiu, nes to neprireiks, tačiau dabar reikia... Tai eik šunim šėko pjaut.

MongoDB Certified Developer
MongoDB Certified DBA
Zend Certified Engineer

5 (edited by qutwala 2011-01-26 17:15:53)

Re: PHP List

Kaip čia pasakius, niekur jis jų nedės. Paliks tavo lentelėje, tiesiog prafiltruots ir atrinks tik tuos duomenis kur naudojai atributą "FILTER", pvz:

 SELECT * FROM `tavo_lentele` LIMIT 5, 5

Matysi rezultatus nuo 5-5, t.y. tik vieną 5, o kiti 1,2,3,4 bei 6,7.. tiesiog nebus paiimti į mysql resursą.

 SELECT * FROM `tavo_lentele` LIMIT 5, 10

Nuo penkių iki dešimt, pvz: 5,6,7,8,9,10.

P.S. labai geras daiktas yra:  Nuoroda

P.P.S. Koks ten tipas pas tave kur if ($veliava == LT), ar kaip ten? čia "LT" konstanta ar kaip?
Dar viena gera nuoroda, spausk čia

Re: PHP List

addinol wrote:

Aš nesimokinu akivaizdžiai, ir manau man to neprireiks toliau gyvenime, tik dabar savo interesam darau, nes kaiką kitą sukūriau kas reikalauja mysql, o dabar ir webą pasiųlė padaryti :)

Tai kodėl nepasakei, kad nemoki ir nenori išmokti? (-;

Yra daug žmonių, kurie moka, nori ir gali ir juos nesunku rasti interneto platybėse.

7 (edited by addinol 2011-01-26 17:24:24)

Re: PHP List

qutwala wrote:

Kaip čia pasakius, niekur jis jų nedės. Paliks tavo lentelėje, tiesiog prafiltruots ir atrinks tik tuos duomenis kur naudojai atributą "FILTER", pvz:

 SELECT * FROM `tavo_lentele` LIMIT 5, 5

Matysi rezultatus nuo 5-5, t.y. tik vieną 5, o kiti 1,2,3,4 bei 6,7.. tiesiog nebus paiimti į mysql resursą.

 SELECT * FROM `tavo_lentele` LIMIT 5, 10

Nuo penkių iki dešimt, pvz: 5,6,7,8,9,10.

P.S. labai geras daiktas yra:  Nuoroda

P.P.S. Koks ten tipas pas tave kur if ($veliava == LT), ar kaip ten? čia "LT" konstanta ar kaip?
Dar viena gera nuoroda, spausk čia

Dėkui pravertė :)

o dėl to LT tai aš gaunu jį iš stulpelio Salis

$country=mysql_result($result,$i,"Salis");

ir tada

if(country == "LT")
{
   $link = " // ir čia noriu įterpti html kodą, bet neleidžia rodo blogai kažkas :( ";
}
elseif(country == "LV")
{
   $link = " // ir čia noriu įterpti html kodą, bet neleidžia rodo blogai kažkas :( ";
}

Ar būtų lengviau daryti tiesiog ne html kodą, be tikrinimo, ir ten kur paveiksliukas tiesiog <img src="flags/**čia reiktų įterpti $country, bet kaip tai padaryti ?">

minde wrote:
addinol wrote:

Aš nesimokinu akivaizdžiai, ir manau man to neprireiks toliau gyvenime, tik dabar savo interesam darau, nes kaiką kitą sukūriau kas reikalauja mysql, o dabar ir webą pasiųlė padaryti :)

Tai kodėl nepasakei, kad nemoki ir nenori išmokti? (-;

Yra daug žmonių, kurie moka, nori ir gali ir juos nesunku rasti interneto platybėse.

Nu šiaip visada noriu ko nors išmokti, bet nenoriu susieti ateities su tuo mokslu, o tik savam naudojimui. O savam naudojimui manau užtektų pagrindų, kuriuos dabar manau ir aiškinuosi :0

Re: PHP List

Su if'ais pavargsi žaisti, kaip mindė minėjo..
Jeigu reiktų tau iš db ištraukti kokius 1k ir atvaizduoti skirtingais paveiksliukais?

Tai rašytum 1k if'ų? :)

Re: PHP List

Geriausia yra leisti rašyti if'us ir žiūrėti po kelinto elseif'o žmogus pradės mąstyti ir pastebės kažkokį tai dėsningumą...

10 (edited by addinol 2011-01-26 17:47:25)

Re: PHP List

Nu tai pas mane maximum 50 if'u būtų ;D manau tai kodo apkrova, o kaip padaryti tuo 2 atvėju kaip minėjau...

<img src="flags/**čia reiktų įterpti $country, bet kaip tai padaryti ?">

ar taip ?

<img src="<?php echo "flags/$country.jpg" ?>" border="0">

Re: PHP List

Taip Arba Ne rodydavo per TV3 atrodo. :)
Tai pasižiūrėk ką išveda ekrane prasukus ir žinosi, kaip čia iš tikro. :)

12 (edited by addinol 2011-01-26 20:46:40)

Re: PHP List

Ok pajungiau, bet kažkodėl, neišsilygiuoja gražiai, šiuo metu atrodo štai taip:

Vardas    Pavarde    Salis Reputacija
    Kasparas Reinert     LT     1047
Kaspar    Reinert     EE     982
Kaspars   Reinert     LV     645

Ta prasme, tik 1 eilutė išsilygiuoja pagal antraštę...

EDIT: Turbūt žinau, galbūt dėlto jog table uždariau while'e o ne po jo :)

Re: PHP List

Jeigu tu turi omenyje vizyalinį lygiavimą, tai čia yra HTML ir CSS klausimas, o ne PHP, o tuo labiau SQL.

Bet kokiu atveju rodyk kodą ir kaip atrodo HTML'as. Nes galiu tave užtikrinti - čia orakulai nesilanko..

Re: PHP List

žinau kad nesilanko, bet jau susitvarkiau kaip jau EDIT'e rašiau, jog buvau neten padėjęs </table>

O dar viena bėda, bandau padaryti jog 3 pirmos eilutės būtų Pajuodintos...

Bandžiau:

<tr>
<?php if($i+1 < 4) echo "<b>"; ?>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $i+1; ?></font></td>
<td><img src="<?php echo "flags/$country.png"?>"></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f5; ?></font></td>
<?php if($i+1 < 4) echo "</b>"; ?>
</tr>

Lyg ir nieko nepadarę, bandžiau ir daugiau variantų tai įterpti tikrinimą į pirma <td>prie kito echo..

Re: PHP List

Tu užsiemi spėliojimu. HTML'as turi savo tag'ų tvarką. Jų dėliojimas *** BET KUR *** rezultato neduos...

16 (edited by addinol 2011-01-26 23:41:41)

Re: PHP List

Na, tai taip, tada belieka į <td> rašyti, bet ar reikės kiekvieną kartą tikrinti su tuo if'u, ta prasme kiekvienam <td>, nėra paprastesnio būdo ?


Nesusitvarkau, bandau dar kitą būdą, tai yra jei $i+1 == 1, tada font color = red...

<td><font face="Arial, Helvetica, sans-serif"><?php $a = $i+1 if($a == 1) echo "<font color="FF0000">$i+1</font>; else echo $i+1 ?></font></td>

Ir nieko...

Ir dar vienas klausimas kaip padaryti 3 mažus stulpelius, stulpelyje :/

http://forums.alliedmods.net/attachment.php?attachmentid=81214&amp;d=1296077088


Warning: count(): Parameter must be an array or an object that implements Countable in /home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line 820

Re: PHP List

addinol: http://bit.ly/e8TEs2

18 (edited by addinol 2011-01-27 15:54:04)

Re: PHP List

Bandžiau padaryti,

<th>bbb
<table>
<tr>
<th></th>
<th></th>
<th></th>
</tr>
</table>
</th>

ir:

<td class="default"><tr><td></td><td></td><td></td></tr></td>

Nieko gero, lentelę išmeto per visą ekraną niekas neišlygiuota:

http://hnstraining.csmanai.eu/list.php

19 (edited by qutwala 2011-01-27 17:41:37)

Re: PHP List

Kažkokia pornografija čia užsiiminėji..
http://www.stepbystephtml.com/htmltut/?step=9
Nedrįsk daugiau post'inti kol neišsispręsi dabartinės problemos.
Pavyzdys - duotas, html editor'ius - duotas.

P.S. Nieko asmeniško. Pasitelk galvą į pagalbą, nes spėliodamas tikrai nei pats ką pasidarysi nei forumo publiką nuteiksi tau padėti. :)