Autor Zpráva
miroslav5
Profil *
Dobry den,
Potreboval bych z databaze mysql, kde mam ulozene clanky, vypsat pouze nekoli znaku z techto clanku, treba 200znaku.
Nevite zda je na to nejakou funkce ci podminka neco jako where pri vyberu?
Dekuji
Alphard
Profil
sql má funkci substr
radas
Profil *
s tímhle mam lepší zkušenosti
mb_substr($zaznam,0,pocet, "UTF-8");
Tomasds
Profil
radas
To je php funkce. Alphard píše o sql funkci a to může znamenat značný rozdíl zátěže.
Alphard
Profil
odpověděl jsem na otázku, v praxi by se ještě pohlídalo půlení slov a párové html značky
Jakub Vrána o tom psal článek, google ho určitě najde
radas
Profil *
Tomasds
ja vím Alphard dobře reagoval ( i s tím Jakubem Vranou) ale myslim si že miroslav5 bude asi potřebovat tohle..(možna)
miroslav5
Profil *
Tak to zkousim takto:

while ($zaznam=MySQL_Fetch_Array($vysledek)) 
  {
    $pocet=250; 
    $vypis = mb_substr($zaznam['popis'], 0, $pocet, 'UTF-8'); 

ale vysledek je ze se mi zobrazi pouze prvni pismenko.

kdyz jem to zkousel dat do dotazu, tak mi to nejde vubec asi ho mam spatne:
$vysledek = ("select idsort, nazev, substring('popis',0,25), popis, name, kategorie, ref_cislo from sortiment ");


Kde je chybka?
tragi
Profil *
mb string neni defaultni rozsireni php, takze ho mozna ma tvuj php server vyple, zkus pouzit neco takoveho

substr_replace(strip_tags($string),$sting_na_konec_texxtu,$pocet-strlen($string));

priklad:
<?php
$string = 'Chci zkratit tento text';
$sting_na_konec_texxtu = '...';
$pocet = 4;

echo substr_replace(strip_tags($string),$sting_na_konec_texxtu,$pocet-strlen($string));
?>

vypis:
Chci...


tak jestli toto nebude fungovat tak bude chybka asi v jine casti kodu, imho.
miroslav5
Profil *
Diky vsem nakonec mi funguji obe varianty, ted bych to chtel jeste osetrit aby mi vybrana cast textu koncila celym slovem a ne treba v jeho pulce.
Nevite jak na to?
miroslav5
Profil *
Beru zpet diky Jakub Vrána vyresil...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0