|
|
|
| Autor |
Správa |
eMPiko Medium Star


Pohlavie:  Stav:  Založený: 11.01.2007 Príspevky: 397 Bydlisko: Give me a sand wedge! Karma: 
|
Zaslal: 09 Máj 2008, 14:15 Predmet: Pomoc s PHP vypisom MySQL databazy |
|
|
Mam nasledujuci kod, ktory mi vypisuje data z databazy, ale ja by som potreboval, aby na prve miesto vypisal najnovsi riadok. Premenne rows, start, end mam zadeklarovane kvoli riadkovaniu, ktore je v dalsej casti skriptu
| Kód: |
mysql_connect("server", ucet, heslo) or die ("FAILED!!!");
mysql_select_db(databaza);
$vypis = mysql_query("SELECT * FROM tabulka");
$rows=10;
if (!isset($max))
{
$max=mysql_num_rows($vypis);
$start=0;
}
if (isset($start))
{
$end=$rows+$start;
if ($end>$max) {$end=$max;}
for ($i=$start ; $i<$end ; $i++)
{
$number = mysql_result($vypis, "$i","number");
$imageID = mysql_result($vypis, "$i","imageID");
$date = mysql_result($vypis, "$i","date");
$caption = mysql_result($vypis, "$i","caption");
echo "<tr>";
echo "<td width=20% align=left><font face=arial size=1> ".mysql_result($vypis, "$i","number")."</td>";
echo "<td width=20% align=left><font face=arial size=1> ".mysql_result($vypis, "$i","imageID")."</td>";
echo "<td width=20% align=left><font face=arial size=1> ".mysql_result($vypis, "$i","date")."</td>";
echo "<td width=40% align=left><font face=arial size=1> ".mysql_result($vypis, "$i","caption")."</td>";
echo "</tr>";
} |
|
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6409 Bydlisko: Prievidza Karma: 
|
Zaslal: 09 Máj 2008, 14:24 Predmet: |
|
|
| Kód: |
| $vypis = mysql_query("SELECT * FROM tabulka"); |
zmeň na
| Kód: |
| $vypis = mysql_query("SELECT * FROM tabulka order by number desc"); |
(teda ak je number tvoj primárny klúč pre túto tabulku.. ale domyslel som si že hej) |
|
| Návrat hore |
|
 |
eMPiko Medium Star


Pohlavie:  Stav:  Založený: 11.01.2007 Príspevky: 397 Bydlisko: Give me a sand wedge! Karma: 
|
Zaslal: 09 Máj 2008, 20:02 Predmet: |
|
|
Dakujem,
este bonusova otazka za 5 bodov, keby som chcel dat link, v ktorom mi ukaze iba jeden konkretny riadok, ako by mal vyzerat? |
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6409 Bydlisko: Prievidza Karma: 
|
Zaslal: 09 Máj 2008, 20:07 Predmet: |
|
|
veď konkrétny riadok si vieš získať cez ten mysql_result ako to robíš, alebo ešte efektívnejšie priamo v sql pomocou limit
neviem aký link myslíš (hyperlinkový odkaz?). To si iba naformátuješ a vypíšeš ako potrebuješ, myslím že echo ti nemôže robiť problém. |
|
| Návrat hore |
|
 |
eMPiko Medium Star


Pohlavie:  Stav:  Založený: 11.01.2007 Príspevky: 397 Bydlisko: Give me a sand wedge! Karma: 
|
Zaslal: 09 Máj 2008, 20:11 Predmet: |
|
|
Myslim ako hypertextovy odkaz, napriklad v tvare:
script.php?$nejaka_premenna=nieco&$ina_premenna=nieco
Neviem ci take cosi existuje, ale malo by sa to podla mna dat spravit, ak nie tak nic no. |
|
| Návrat hore |
|
 |
chrono VIP


Pohlavie:  Stav:  Založený: 25.12.2006 Príspevky: 4331
Karma: 
|
Zaslal: 09 Máj 2008, 20:20 Predmet: |
|
|
Ten odkaz si môžeš urobiť aký chceš. Potom musíš správne zostaviť SQL query (takže by bolo ideálne, keby v tom url bol aj nejaký jedinečný identifikátor toho riadku).
Teda môžeš do url pridať napr. nieco=id a potom k tomu query pridáš WHERE stlpec=id (v tvojom prípade je ten identifikátor pravdepodobne v stĺpci number [ale to iba tipujem, kedže si to nenapísal]). |
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6409 Bydlisko: Prievidza Karma: 
|
Zaslal: 09 Máj 2008, 20:32 Predmet: |
|
|
hej, a k tým linkom, vypadali by napríklad stranka.php?premenna1=hodnota1&premenna2=hodnota2
(oddelenie premenných od stránky pomocou otázniku, potom jednotlivé premenné oddeluješ pomocou &)
v php ich budeš mať v poli $_GET, takže k nim pristúpiš ako $_GET['premenna1'] a $_GET['premenna2'] |
|
| Návrat hore |
|
 |
eMPiko Medium Star


Pohlavie:  Stav:  Založený: 11.01.2007 Príspevky: 397 Bydlisko: Give me a sand wedge! Karma: 
|
Zaslal: 09 Máj 2008, 21:26 Predmet: |
|
|
Nechapem Zhrnte mi teda vsetko co musim urobit |
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6409 Bydlisko: Prievidza Karma: 
|
Zaslal: 09 Máj 2008, 21:29 Predmet: |
|
|
| eMPiko napísal: |
Nechapem Zhrnte mi teda vsetko co musim urobit |
link na výber 10. riadku bude skript.php?riadok=10 a sql v php bude select * from tabulka where podmienka limit $_GET['riadok'],1 |
|
| Návrat hore |
|
 |
chrono VIP


Pohlavie:  Stav:  Založený: 25.12.2006 Príspevky: 4331
Karma: 
|
Zaslal: 09 Máj 2008, 21:36 Predmet: |
|
|
Asi si si nepozrel ten jeho skript. Buď ho bude musieť celý upraviť, alebo to bude musieť urobiť inak. |
|
| Návrat hore |
|
 |
eMPiko Medium Star


Pohlavie:  Stav:  Založený: 11.01.2007 Príspevky: 397 Bydlisko: Give me a sand wedge! Karma: 
|
Zaslal: 11 Máj 2008, 11:11 Predmet: |
|
|
No tak ako, mam vobec skusat audiotrackove riesenie, alebo co?
//autoeditácia príspevku ( 11 May 2008, 11:11 )
A este jedna vec, takto sa vlastne nacita cela databaza, co by po case asi nevyhovovalo. Nevedeli by ste script upravit tak, aby sa nacitala len jedna stranka? |
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6409 Bydlisko: Prievidza Karma: 
|
Zaslal: 11 Máj 2008, 11:16 Predmet: |
|
|
veď cez limit:
| Kód: |
| $vypis = mysql_query("SELECT * FROM tabulka order by number desc limit 10"); |
načíta 10 riadkov, takže tam iba hodíš to $max či ako si to tam pomenoval |
|
| Návrat hore |
|
 |
chrono VIP


Pohlavie:  Stav:  Založený: 25.12.2006 Príspevky: 4331
Karma: 
|
Zaslal: 11 Máj 2008, 15:37 Predmet: |
|
|
| eMPiko napísal: |
| A este jedna vec, takto sa vlastne nacita cela databaza, co by po case asi nevyhovovalo. Nevedeli by ste script upravit tak, aby sa nacitala len jedna stranka? |
Chcel som ti odporučiť, aby si to zmenil. Potom by sa tam ľahšie pridalo to zobrazenie jedného riadku. Čiže SELECT by si mierne upravil "SELECT * FROM `tabulka` LIMIT '$start','$rows'". Ak by si chcel len jeden riadok, doplnil by si tam ešte "WHERE `number`='$nieco'". |
|
| Návrat hore |
|
 |
|
|  |
|
|
Nemôžete odosielať nové témy do tohto fóra Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre Nemôžete hlasovať v tomto fóre Nemôžete pripájať súbory do tohto fóra Môžete sťahovať súbory v tomto fóre
|
Powered by phpBB © 2005 phpBB Group, phpBB SEO, © Hojko 2004-2008
[ Vygenerované za: 0.1s ] :: [ 16 Queries ] :: [ 18,584 stránok za dnes ] :: [ Dnes DB: 340,818 ] :: [ Max DB: 2,334,336 Queries ]
|