Autor Zpráva
Pan X
Profil
Dobrý den.

Právě pracuji na jedno projektu na mám problém s překódováním webů.

Používám tento script:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="cs">
	
	<head>
		<meta http-equiv="content-type" content="text/html; charset=utf-8">
        <meta name="resource-type" content="document">
        <meta http-equiv="pragma" content="no-cache">
        <meta name="robots" content="index, follow"> 
     	<meta name="description" content="doplnit">
		<meta name="keywords" content="doplnit">
     	<meta name="author" content="doplnit">
     	
		<link rel="stylesheet" type="text/css" href="files/css/style.css">
     	
		<title>doplnit</title>
	</head>
	<body>
<?php
    
    $spojeni = mysql_connect("mysql.webzdarma.cz","user","********") or die ('Spatne zadane udaje (asi heslo, server nebo jmeno.) v db.php');
    mysql_select_db("jobik", $spojeni) or die ('Spatne zadana databaze v db.php');
    mysql_query("SET NAMES 'utf8'"); 
    
    $query = MySQL_Query("SELECT url FROM `search` ORDER BY id");
    echo MySQL_Error();
    while($vypis = MySQL_Fetch_Array($query)){
        
        $adresa = $vypis['url'];
        $obsah = file_get_contents($adresa);
        
		preg_match_all('~<meta http-equiv="Content-Type" content="text/html; charset=([^"]+?)"~', $obsah, $kodovani);
       	      	
    	foreach($kodovani[1] as $kodovani2){
    		
    	    
			    
        	preg_match_all('~<meta name="keywords" content="([^"]+?)"~', $obsah, $kam);
       	      	
	    	foreach($kam[1] as $nazev){
	    		
	    		
	    		echo 'keywords '.$nazev.'<br><br>';	
				
	            
	            $str = mb_convert_encoding($nazev, "SJIS");
				$str = mb_convert_encoding($nazev, "UTF-8", "EUC-JP");
				$str = mb_convert_encoding($nazev, $kodovani2, "JIS, eucjp-win, sjis-win");
				$str = mb_convert_encoding($nazev, "EUC-JP", "auto");
				
				echo 'test'.$str.'<br><br>';
	    		
	    	}    
	    	
	    	preg_match_all('~<title>([^"]+?)</title>~', $obsah, $kam);
	       	      	
	    	foreach($kam[1] as $nazev){
	    		
	    		echo 'title '.$nazev.'<br><br>';
				
				$str = mb_convert_encoding($nazev, "SJIS");
				$str = mb_convert_encoding($nazev, "UTF-8", "EUC-JP");
				$str = mb_convert_encoding($nazev, $kodovani2, "JIS, eucjp-win, sjis-win");
				$str = mb_convert_encoding($nazev, "EUC-JP", "auto");
				
				echo 'test'.$str.'<br><br>';
				
				
							
	    		
	    	}    
            	$obsah = mysql_real_escape_string($obsah);
            	mysql_query('UPDATE search SET text="'.$obsah.'" WHERE url="'.$vypis['url'].'"');
           	 	echo mysql_error();
	           
    	    }
    	
       }  
 
?>
	</body>
</html>


Vypisuji zatím web webzdarma.cz a výpis bez změny kódováním vypadá takto:
title webzdarma.cz - web, e-mail a datab�ze ... zdarma
keywords webzdarma, web, zdarma, php, freehosting, hosting, datab�ze, PHP, MySQL

A vípis se změnou kódování na UTF-8:

test webzdarma, web, zdarma, php, freehosting, hosting, databze, PHP, MySQL
title webzdarma.cz - web, e-mail a databze ... zdarma


Když změním kódování tak znaky ( v našem případě Á ) zmizí.


Mohl by mi někdo poradit jak tento nedostatek odstranit.

Předem díky

Pan X
Pan X
Profil
Vyřešeno zamykám
Toto téma je uzamčeno. Odpověď nelze zaslat.