mam podobny problem
W bazie mam nazwiska z polskimi znakami, jednak wyszukiwarka jest przeznaczona m.in. dla obcokrajowców.
Potrzebuję aby po kliknięciu w literkę S zostały mi wy¶wietlone nazwiska zarówno na literkę S jak i ¦
Zrobiłem tak jak poniżej - lecz co przekombinowałem - zwraca mi nazwiska z wszystkimi polskimi znakami czyli na ¦ i na Ż też po kliknięciu w każd± literkę. (w dodatku nie podmienia tekstu startowego). Jestem do¶ć pocz±tkuj±cy, i robię czasem podstawowe błędy.
Kod
if($letter)
{
$letter = strtr($letter2,"ˇĆĘŁŃӦݬ±ćęłń󶿼","ACELNOSZZacelnoszz");
$letter = strtr($letter2, array("c"=>"[ć]",""=>"[ł]","o"=>"[ó]","s"=>"¶","z"=>"[ż]","z"=>"[Ľ]"));
$letter = strtr($letter2, array("C"=>"[C]","L"=>"[Ł]","O"=>"[Ó]","S"=>"¦","Z"=>"[Ż]","¬"=>"[¬]"));
$getWord=mysql_query("SELECT nazwisko FROM fnt WHERE nazwisko LIKE '$letter%' GROUP BY nazwisko", $db);
if($getWordArray=mysql_fetch_array($getWord))
{
do
{
echo "<br><a href=\"index.php?nazwisko=";
printf($getWordArray["nazwisko"]);
echo "\">";
printf($getWordArray["nazwisko"]);
echo "</a>";
}
while($getWordArray=mysql_fetch_array($getWord));
do
{
echo "<br><a href=\"index.php?nazwisko=";
printf($getWord2Array["nazwisko"]);
echo "\">";
printf($getWord2Array["nazwisko"]);
echo "</a>";
}
rozwi±załem - oto sposób. czy dobry ?
Kod
if($letter)
{
// nieczuło¶ć na polskie literki
$letter2 = strtr($letter,"ćł¶ż","clsz");
$letter2 = strtr($letter, array("c"=>"ć","l"=>"ł","s"=>"¶","z"=>"ż"));
$letter3 = strtr($letter,"Ľ","z");
$letter3 = strtr($letter, array("z"=>"Ľ"));
$getWord=mysql_query("SELECT nazwisko FROM fnt WHERE nazwisko LIKE '$letter%' OR nazwisko LIKE '$letter2%' OR nazwisko LIKE '$letter3%' GROUP BY nazwisko", $db);
if($getWordArray=mysql_fetch_array($getWord))
{
do
{
echo "<br><a href=\"index.php?nazwisko=";
printf($getWordArray["nazwisko"]);
echo "\">";
printf($getWordArray["nazwisko"]);
echo "</a>";
}
while($getWordArray=mysql_fetch_array($getWord));