Odstraneni diakritiky uploadovaneho souboru – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Odstraneni diakritiky uploadovaneho souboru – PHP – Fórum – Programujte.comOdstraneni diakritiky uploadovaneho souboru – PHP – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
tribalcz0
Super člen
19. 8. 2013   #1
-
0
-

ahoj potrbuju odstranit diakritiku u uploadovaneho souboru pouzivam tento kod 


                  move_uploaded_file($_FILES["file"]["tmp_name"],
                  "../upload/files/" . StrTr($_FILES["file"]["name"], "ÁÄČÇĎÉĚËÍŇÓÖŘŠŤÚŮÜÝŽáäčçďéěëíňóöřšťúůüýž", "AACCDEEEINOORSTUUUYZaaccdeeeinoorstuuuyz"));

ovsem jedine co to udela je ze to z nazvu udela jeste vetsi nesmysl nez puvodne

Nahlásit jako SPAM
IP: 178.209.131.–
KIIV
~ Moderátor
+43
God of flame
19. 8. 2013   #2
-
0
-

mozna to mas v jiny znakovy sade

Nahlásit jako SPAM
IP: 213.220.241.–
Program vždy dělá to co naprogramujete, ne to co chcete...
tribalcz0
Super člen
20. 8. 2013   #3
-
0
-

nerekl bych pro stranku pouzivam utf-8 editor pouzivam php designer kde mam nastavene vychozi fomatovani na unix/utf-8 bez bom a script pro zpracovani souboru a nasledne ulozeni na serveru a db pouziva na uplne prvnim radku mimo pripojeni do db a nastartovani session take php header kde nastavuji kodovani na utf-8 defakto nevadi ze to takhle habruje protoze se jedna o videa ktera nejsou pristupna ke stazeni jen pro prehrani a do db se uklada sten´jna zkomolenina (dikybohu) takze vypis je v poradku a navic mohu pouzit umeli nazev treba aktualni datum+nick ale  

<?php
    session_start();
    require("../php/connect.php");
    header('Content-type: text/html;charset=UTF-8');
?>
        <?php
            $allowedExts = array("mp4", "avi");
            $temp = explode(".", $_FILES["file"]["name"]);
            $extension = end($temp);        
            $majitel = $_SESSION['login'];
           mysql_real_escape_string(htmlspecialchars($_POST['nazev'], ENT_NOQUOTES));
            $url =  mysql_real_escape_string(htmlspecialchars($_FILES["file"]["name"], ENT_NOQUOTES));
            $popis =  mysql_real_escape_string(htmlspecialchars($_POST['popis'], ENT_NOQUOTES));
            $uid = 234;
            $vlozeno= date("j.n.Y H:i:s");    
            if ((($_FILES["file"]["type"] == "video/avi")
            || ($_FILES["file"]["type"] == "video/mp4"))
            && ($_FILES["file"]["size"] < 2000000000)
            && in_array($extension, $allowedExts))
              {
              if ($_FILES["file"]["error"] > 0)
                {
                echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
                }
              else
                {
                echo "Upload: " . $_FILES["file"]["name"] . "<br>";
                echo "Type: " . $_FILES["file"]["type"] . "<br>";
                echo "Size: " . round(($_FILES["file"]["size"] / 1000000), 2) . " MB<br />";
                echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
            
                if (file_exists("../upload/files/" . $_FILES["file"]["name"]))
                  {
                  echo $_FILES["file"]["name"] . " již existuje. ";
                  }
                else
                  {
                  move_uploaded_file($_FILES["file"]["tmp_name"],
                  "../upload/files/" . $_FILES["file"]["name"]);
                  echo "Stored in: " . "../upload/files/" . $_FILES["file"]["name"];
                  $sql = mysql_query("INSERT INTO videa VALUES ('','$majitel','$prijemce','$nazev','$url','$popis','$uid','$vlozeno')") or die(mysql_error());
                    echo "data byla úspěšně zpracována a odeslána na server";
                  }
                }
              }
            else
              {
              echo "Nastala chyba zkontrolujte velikost a formát souboru";
              }
        ?> 
Nahlásit jako SPAM
IP: 178.209.131.–
Řešení
KIIV
~ Moderátor
+43
God of flame
20. 8. 2013   #4
-
+1
-
Zajímavé
Vyřešeno Nejlepší odpověď

problem je akorat v tom, ze strtr asi nebude moc dobre fungovat zrovna pro utf8 znaky... budes je muset dat bud explicitne jako 'Ä'=>'A', .... nebo pouzit nejakou  mb_*  verzi...  nebo treba iconv ci podobne

Nahlásit jako SPAM
IP: 213.220.241.–
Program vždy dělá to co naprogramujete, ne to co chcete...
tribalcz0
Super člen
20. 8. 2013   #5
-
0
-

takze neco jako toto??  prevzato z http://cs.wikibooks.org/wiki/PHP_prakticky/Odstran%C4%9Bn%C3%AD_diakritiky

$prevodni_tabulka = Array(
  'ä'=>'a',
  'Ä'=>'A',
  'á'=>'a',
  'Á'=>'A',
  'à'=>'a',
  'À'=>'A',
  'ã'=>'a',
  'Ã'=>'A',
  'â'=>'a',
  'Â'=>'A',
  'č'=>'c',
  'Č'=>'C',
  'ć'=>'c',
  'Ć'=>'C',
  'ď'=>'d',
  'Ď'=>'D',
  'ě'=>'e',
  'Ě'=>'E',
  'é'=>'e',
  'É'=>'E',
  'ë'=>'e',
  'Ë'=>'E',
  'è'=>'e',
  'È'=>'E',
  'ê'=>'e',
  'Ê'=>'E',
  'í'=>'i',
  'Í'=>'I',
  'ï'=>'i',
  'Ï'=>'I',
  'ì'=>'i',
  'Ì'=>'I',
  'î'=>'i',
  'Î'=>'I',
  'ľ'=>'l',
  'Ľ'=>'L',
  'ĺ'=>'l',
  'Ĺ'=>'L',
  'ń'=>'n',
  'Ń'=>'N',
  'ň'=>'n',
  'Ň'=>'N',
  'ñ'=>'n',
  'Ñ'=>'N',
  'ó'=>'o',
  'Ó'=>'O',
  'ö'=>'o',
  'Ö'=>'O',
  'ô'=>'o',
  'Ô'=>'O',
  'ò'=>'o',
  'Ò'=>'O',
  'õ'=>'o',
  'Õ'=>'O',
  'ő'=>'o',
  'Ő'=>'O',
  'ř'=>'r',
  'Ř'=>'R',
  'ŕ'=>'r',
  'Ŕ'=>'R',
  'š'=>'s',
  'Š'=>'S',
  'ś'=>'s',
  'Ś'=>'S',
  'ť'=>'t',
  'Ť'=>'T',
  'ú'=>'u',
  'Ú'=>'U',
  'ů'=>'u',
  'Ů'=>'U',
  'ü'=>'u',
  'Ü'=>'U',
  'ù'=>'u',
  'Ù'=>'U',
  'ũ'=>'u',
  'Ũ'=>'U',
  'û'=>'u',
  'Û'=>'U',
  'ý'=>'y',
  'Ý'=>'Y',
  'ž'=>'z',
  'Ž'=>'Z',
  'ź'=>'z',
  'Ź'=>'Z'
);
 
$text = strtr($text, $prevodni_tabulka);
Nahlásit jako SPAM
IP: 178.209.131.–
tribalcz0
Super člen
20. 8. 2013   #6
-
0
-

jo ted uz to funguje :-) diky

Nahlásit jako SPAM
IP: 178.209.131.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

Podobná vlákna

Odstranění diakritiky — založil gengar

Odstránenie diakritiky — založil Hudacik

? místo diakritiky — založil A

Zakodovanie diakritiky — založil Tom

Odhalení diakritiky — založil gruv

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý