Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zamiana ą->a
Forum PHP.pl > Forum > PHP
therias
Witam.
Mam formularz którym wrzucam zdjęcia na stronę (w skrocie):

CODE
...<meta http-equiv="Content-Type" content="text/html; charset=utf-8">...

<form action="index.php?d=galeria&amp;s=add" method="post" enctype="multipart/form-data" name="dodajZdj">
Zdjecie <input type="file" name="zdj" onchange="java script:document.dodajZdj.submit()" />
Opis <input type="text" maxlength="255" name="opis" />
<input type="submit" value="dodaj" name="addZdj" />
</form>


oraz funkcję:

CODE
<?php
function changeTitle($url)
{
$url = strip_tags(html_entity_decode($url));
$url = str_replace("'", '', iconv('utf-8', 'ascii//translit', $url));
$url = preg_replace('/[^a-zA-Z0-9-_]/', '-', $url);
$url = preg_replace('/\-+/', '-', $url);
$url = trim($url, '-');
return strtolower($url);
}

$n_zdjecia = changeTitle($_POST['opis']);
?>


Zmieniamy nazwe zdjecia na $n_zdjecia.'.jpg'.

Problem polega na tym, ze gdy skrypt odpalam na localhoscie funkcja zwraca mi takie cos:
'piękne zdjęcie' -> 'piekne-zdjecie'
Lecz gdy wrzuce skrypt na serwer zamienia tak:
'piękne zdjęcie' -> 'pi-kne-zdj-cie'

W czym może tkwić porblem? Ustawienia serwera, czy niedopatrzenie?

doszedłem do tego że iconv() na localhoscie zamienia ąę... na: ae, a na serwerze na: questionmark.gif
Dlaczego?
ActivePlayer
usuwanie polskich znaków
kliperjk
Mialem ten problem, ale w odwrotnej kolejnosci smile.gif zle dzialal mi pod windowsem a na serwerze bylo ok...

moja metoda:


Kod
    private static function _($lancuch) {
    if(!DEVEL) {
        $tabela = array (
        //WIN
        "\xb9" => "a", "\xa5" => "A", "\xe6" => "c", "\xc6" => "C",
        "\xea" => "e", "\xca" => "E", "\xb3" => "l", "\xa3" => "L",
        "\xf3" => "o", "\xd3" => "O", "\x9c" => "s", "\x8c" => "S",
        "\x9f" => "z", "\xaf" => "Z", "\xbf" => "z", "\xac" => "Z",
        "\xf1" => "n", "\xd1" => "N",
        //UTF
        "\xc4\x85" => "a", "\xc4\x84" => "A", "\xc4\x87" => "c", "\xc4\x86" => "C",
        "\xc4\x99" => "e", "\xc4\x98" => "E", "\xc5\x82" => "l", "\xc5\x81" => "L",
        "\xc3\xb3" => "o", "\xc3\x93" => "O", "\xc5\x9b" => "s", "\xc5\x9a" => "S",
        "\xc5\xbc" => "z", "\xc5\xbb" => "Z", "\xc5\xba" => "z", "\xc5\xb9" => "Z",
        "\xc5\x84" => "n", "\xc5\x83" => "N",
        //ISO
        "\xb1" => "a", "\xa1" => "A", "\xe6" => "c", "\xc6" => "C",
        "\xea" => "e", "\xca" => "E", "\xb3" => "l", "\xa3" => "L",
        "\xf3" => "o", "\xd3" => "O", "\xb6" => "s", "\xa6" => "S",
        "\xbc" => "z", "\xac" => "Z", "\xbf" => "z", "\xaf" => "Z",
        "\xf1" => "n", "\xd1" => "N");
    } else {
        return iconv("UTF-8","ASCII//IGNORE",$lancuch);
    }

    return strtr($lancuch,$tabela);
    
    }
therias
co to jest DEVEL ?
.radex
sprawdź sobie w manualu
phpion
Cytat(therias @ 25.05.2008, 23:29:31 ) *
co to jest DEVEL ?


Cytat(radex_p @ 26.05.2008, 08:53:56 ) *
sprawdź sobie w manualu

Zanim zaczniesz pisać głupoty może najpierw sam sprawdź. Może podasz łaskawie linka do manuala określającego czym jest DEVEL?

@therias:
DEVEL to pewnie stała definiowana przez kodera w celu określenia czy kod działa w trybie developerskim (pewnie to właśnie jest DEVEL) czy w produkcyjnym (zapewne coś w stylu PROD).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.