hallo there
i read an excel file using excel_reader library.
The excel file contains greek characters.
i get the data and store it into arrays (it is a common xls file that contains names, lastnames and fathersnames) using characters set utf-8.
the code works fine
//i uploaded the xls file
$data = new Spreadsheet_Excel_Reader($_FILES["file"]["name"]);
error_reporting(E_ALL ^ E_NOTICE);
$num_row = $data->rowcount() + 1;
$num_col = $data->colcount() + 1;
//get details about the data i need
$line=$_POST['line'];
$colname=$_POST['name'];
$collastname=$_POST['epitheta'];
$colfather=$_POST['fname'];
$tmima=$_POST['tmima'];
$check=$_POST['check'];
$y=1;
for ($i=$line+1; $i< $num_row; $i++)
{
if ($data->val($i, $colname) !== '')
{
$name[$y] = $data->val($i, $colname);
$lname[$y] = $data->val($i, $collastname);
$fname[$y] = $data->val($i, $colfather);
$y++;
}
}
the code works just fine.
if my character set on my page is utf-8 and i echo the arrays i see what i should see.
The first problem is that i want to show that data into a page with charset windows-1253 because into the same page there is some other greek text i need to show.
if i set my whole page character enconding into utf-8 then i can see the names and lnames but eveyrything else that is written in greek are not understantable. When i set the character enconding into windows-1253 i can not see the names!!!!
the second problem is probably the same.
i have made a function that converts evey greek letter into english (i want to construct usernames fron teh lasta names. the function works just fine.(it s been tested)
function greeklish($Name)
{
$greek = array('á','Ü','¢','Á','â','Â','ã', 'Ã', 'ä','Ä','å','Ý','Å','¸','æ','Æ','ç','Þ','Ç','è','È','é','ß','ú','À','É','º', 'ê','Ê','ë','Ë','ì','Ì','í','Í','î','Î','ï','ü','Ï','¼','ð','Ð','ñ','Ñ','ó','ò', 'Ó','ô','Ô','õ','ý','Õ','¾','ö','Ö','÷','×','ø','Ø','ù','þ','Ù','¿',' ',"'","'",',');
$english = array('a', 'a','A','A','b','B','g','G','d','D','e','e','E','E','z','Z','i','i','I','th','Th', 'i','i','i','i','I','I','k','K','l','L','m','M','n','N','x','X','o','o','O','O','p','P' ,'r','R','s','s','S','t','T','u','u','Y','Y','f','F','ch','Ch','ps','Ps','o','o','O','O','_','_','_','_');
$string = str_replace($greek, $english, $Name);
return $string;
}
so i want to convert the names array into its latin characters
for ($o=1; $o < $y; $o++)
{
$name[$o]=greeklish($name[$o]);
}
the result is that the table name contains not understantable characters