Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2
  1. #1
    New Coder
    Join Date
    Oct 2011
    Posts
    10
    Thanks
    0
    Thanked 0 Times in 0 Posts

    exporting from DB to CSV - encoding issues with arabic characters

    Im trying to export from DB content that includes Arabic letters.
    When I export to CSV/XLS it appears as ???????? or ال*مراوي
    I use this code:
    Code:
    $query = "SET NAMES 'utf8' COLLATE 'utf8_general_ci'";
    mysql_query($query) or die(mysql_error());
    
    
    function CSVExport($query,$filename = 'data') {
        $sql_csv = mysql_query($query) or die("Error: " . mysql_error()); 
        header('Content-Type: text/html; charset=UTF-8');
        //header("Content-type: application/vnd.ms-excel");
        header("Cache-Control: cache, must-revalidate");
        header("Pragma: public"); 
        header("Content-type:text/octect-stream");
        header("Content-Disposition:attachment;filename=$filename.csv");
        
        while($row = mysql_fetch_row($sql_csv)) {
            print '"' . stripslashes(implode('","',$row)) . "\"\n";
        }
        exit;
    }
    
    
     CSVExport("SELECT * from `arabictable`", 'myexportfile');


    Anyone has idea how do I fix this? How do I see Arabic letters correctly?

  • #2
    God Emperor Fou-Lu's Avatar
    Join Date
    Sep 2002
    Location
    Saskatoon, Saskatchewan
    Posts
    16,987
    Thanks
    4
    Thanked 2,660 Times in 2,629 Posts
    Open that up in an editor that supports utf8. Does it show the characters as expected?
    You'll probably need a content-encoding header as well. Not sure why your content type is text/html, that should be either text/csv or application/csv (or even text/plain), but overall that won't make a tremendous difference to an attachment. You may need to transfer in binary for this as well.


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •