tein mysql taulukon, news jossa on ncode(auto), date, header ja text solut, pitas vasata sillei et sais haettuu kolme viimesinta headingia ja sit toinen juttu et sais haettuu kaikki, mut text osasta vaan pieni patka, kuinka tama?
on ulkomailla joten mul on enkkunappis taal, et sori jos jotain hairitsee...
Seuraavassa vähän vinkkiä, idean saanee selville.
SELECT ncode, date, header, text FROM news ORDER BY date DESC LIMIT 3
SELECT ncode, date, header, SUBSTRING(text, 0, 10) FROM news
kiitokset kokeilen tota...
ku kokeilin tota toista noista (tarkoitan alempaa, ylempi toimi hyvin) ni text kohta on tyhja... mut se ei kyl nayta mitaan erroriikaan?
Hmm... oliskohan oikea syntaksi sitten SUBSTRING(text, 1, 10), eli tuo ensimmäinen merkki ei olisikaan indeksillä 0, vaan yksi :\ No oli miten oli, seuraavassa lainaus manuaalista:
MySQL Reference Manual kirjoitti:
SUBSTRING(str,pos) , SUBSTRING(str FROM pos) , SUBSTRING(str,pos,len) , SUBSTRING(str FROM pos FOR len)
The forms without a len argument return a substring from string str starting at position pos. The forms with a len argument return a substring len characters long from string str, starting at position pos. The forms that use FROM are standard SQL syntax.
mysql> SELECT SUBSTRING('Quadratically',5);
-> 'ratically'
mysql> SELECT SUBSTRING('foobarbar' FROM 4);
-> 'barbar'
mysql> SELECT SUBSTRING('Quadratically',5,6);
-> 'ratica'
en ymmarra... kokeilin ilman substringia ni kylla naytti kaikki, mut sit ku kokeilen substringin kanssa, ni ei nayta viellakaan mitaan, vaihoin 0:n 1:s mut ei... koodi nayttaa talta, taa on vaan testi koodia, ei oo tarkotus kayttaa tota ulkoasua missaan =)
$kysely = "SELECT ncode, date, heading, SUBSTRING(text, 1, 20) FROM allnews ORDER BY date DESC"; echo $kysely; $haku = mysql_query($kysely, $yhteys) or die("Virhe kyselyssä!"); echo "<table border=\"0\" bgcolor=\"#D2691E\">"; echo "<tr bgcolor=\"#F5DEB3\"><td width=\"130\"><b>Uutiset</b></td></tr>"; for ($i = 0; $i < mysql_num_rows($haku); $i++) { $date = mysql_result($haku, $i, "date"); $heading = mysql_result($haku, $i, "heading"); $text = mysql_result($haku, $i, "text"); echo "<tr bgcolor=#FFFFFF><td>$date | $heading</td></tr>"; echo "<tr bgcolor=#FFFFFF><td>$text</td></tr>"; } echo "</table>";
Kamala mika sotku :)
Seuraava saattaisi jopa toimia :)
SELECT ncode, date, heading, SUBSTRING(text, 1, 20) AS text FROM allnews ORDER BY date DESC
Ma oon niin onnellinen!! ;)
Kiitos Olga nyt toimii...
Aihe on jo aika vanha, joten et voi enää vastata siihen.