Autor | Zpráva | ||
---|---|---|---|
M4ra Profil * |
#1 · Zasláno: 25. 12. 2008, 16:09:52
Zdravím, na netu jsem si našel funkci která převede znaky na malá písmena bez diakritiky (pro SEO optimalizaci). Jenže z tohodle:
První pořádný článek mi vznikde tohle: prvn-podn-lnek Vypadá to že funkce bude v pořádku, ale píš ta bude blbnout diakritika s něčím v databázi asi... Nevíte jak by to šlo vyzpravit? Přikládám zdroják fce: function cool_uri($nazev) { $nazev=strtolower($nazev); $co=array('ě','š','č','ř','ž','ý','á','í','é','ó','ů','ú',' ','_'); $za_co=array('e','s','c','r','z','y','a','i','e','o','u','u','-','-'); $nazev=str_replace($co,$za_co,$nazev); $string = NULL; $pred = NULL; for($i=0;$i<strlen($nazev);$i++) { $znak = substr($nazev,$i,1); if($pred== $znak AND $znak == '-') elseif((ord($znak) > 96 AND ord($znak)<123) OR (ord($znak)>47 AND ord($znak)<58) OR ord($znak)==45) { $string .= $znak; $pred = $znak; } $znak = NULL; } return $string; } |
||
Taps Profil |
#2 · Zasláno: 25. 12. 2008, 16:48:49
M4ra
v jakém kodování máš text, který převádíš pomocí této funkce ? |
||
M4ra Profil * |
#3 · Zasláno: 25. 12. 2008, 16:58:40
Taps
mám vše v utf8 - samotný soubor, porovnání v databázi, upřipojení mám tohle: mysql_query("SET character_set_results=utf8"); mysql_query("SET character_set_connection=utf8"); mysql_query("SET character_set_client=utf8"); nevím co ještě přidat k tomuhle... |
||
Taps Profil |
#4 · Zasláno: 25. 12. 2008, 19:04:54
M4ra
zkus použít místo strtolower,substr,strlen mb_strtolower mb_substr mb_strlen |
||
makčupikču Profil * |
#5 · Zasláno: 25. 12. 2008, 19:14:22
$nazev=mb_strtolower($nazev, "UTF-8");
|
||
gmvasek Profil |
#6 · Zasláno: 25. 12. 2008, 20:00:29
Použij řešení Jakuba Vrány - http://php.vrana.cz/vytvoreni-pratelskeho-url.php
|
||
M4ra Profil * |
#7 · Zasláno: 25. 12. 2008, 20:33:21
díky, pomohlo ;)
|
||
Časová prodleva: 15 let
|
0