Új hozzászólás Aktív témák

  • Taci

    addikt

    Kérnék egy kis segítséget.

    Olyan szinten vért izzadtam ezzel...

    $str1 = "Névtelen";
    $str2 = "Névtelen";
    $pattern = "/á|é|í|ó|ö|ő|ú|ü|ű/i";
    echo preg_match($pattern, $str1) . "<br>";
    echo preg_match($pattern, $str2) . "<br>";

    Az output pedig ez:
    0
    1

    Az elsőt (str1) én gépeltem be, a másodikat egy link címéből másoltam ki ( [link] ).
    Aztán kb. fél óra idegőrlő próbálgatás után (kb. annyi kellett, hogy a link részeit külön-külön megnézve megtaláljam, mi nem stimmel) megnéztem a link forrását, ahol azt láttam, hogy a Névtelen az ott valójában Ne%CC%81vtelen.

    Ezt találtam róla:
    e%CC%81 (U+0065 U+0301): Combining character e + ́

    Még a Notepad++ is furcsán "kezeli", mert amikor kijelölném (normál é betűnek látszik), akkor elsőre csak a feléig jelöli, aztán következő lépésben (Shift + jobbra) a másik felét.
    Ide be tudom most csak azt a karaktert másolni: é
    És fura módon ha a sima é-re keresek, ezt is találatnak dobja. De amikor egyet visszatörlök: e lesz.

    Találtam egy ilyen patternt, ami "beugrik" mindenre:
    /\p{L}+/u
    Viszont én kifejezetten azt szeretném, hogy csak akkor adjon találatot, hogy magyar ékezetes betűk vannak benne.

    Amihez használnám:
    Linkeket ellenőrzök vele.
    if (filter_var($link, FILTER_VALIDATE_URL, FILTER_NULL_ON_FAILURE))
    Ez hibásnak dobja, ha ékezetes karakter van a linkben (works as designed), ezért egy újabb lépcsőben ellenőrzöm, hogy a magyar ékezetes betűk vannak-e benne, és ha igen, akkor tovább engedem.

    Na ez eddig működött, most ezzel a "fura ékezetes megoldással" már nem.

    Hirtelen ötlettől vezérelve megnéztem a header-jét, és bár böngészőben 200-as státuszú, a get_headers által visszaadva HTTP/1.1 404 Not Found.

    Hogyan lehetne ezt megoldani?

    Egy másik linkben © karaktert fogott meg a szkriptem... hát legyen az ő bajuk, aki így enged ki egy linket. Bár ennél speciel 200-as a státusz a headerben, de hát akkor is.

Új hozzászólás Aktív témák