Hello,
Excel 2003 unter Windows kann die Umlaute nicht richtig darstellen. Ich vermute, der Header wird von Excel ignoriert. Da es mi UTF-8 nicht funktioniert, habe ich iso-8859-1 probiert mit demselben Fehler:
Du scheinst Recht zu haben. So funktioniert es:
  
  
<?php   ### db_get_csv.php ### utf-8 ### ÄÖÜäöü  
  
	include ('../../includes/functions.php');  
	include ('../../includes/config.php');  
  
	$con = get_db_con();  
	$sql =  "SELECT * FROM `login`";  
	$result = mysqli_query($con, $sql) or die($sql . '<br>' . mysql_error());  
  
	$_list = array();  
	while ($_row = mysqli_fetch_assoc($result))  
	{  
		$_list[] = $_row;  
	}  
	  
	$fp = fopen('php://output', 'wb');  
  
	header('Content-Type: application/msexcel; Charset=utf-8');  
	#header('Content-Type: text/csv; Charset=iso8859-1');  
  
	foreach($_list as $key => $_value)  
	{  
		$_value = array_map('utf8_decode', $_value);  
	    fputcsv($fp, $_value, "\t");  
	}	  
  
?>  
  
Meine Datenbank ist auf utf-8 eingestellt und die Seite, aus der ich das aufrufe auch.
Excel kann kein utf-8.
OpenOffice.org-Calc önnet den Importmanager, wie erwartet, und zeigt an, dass ich UTF-8 behauptet habe, aber dass in der betroffenen Zeile ISO8859-1 drin steckt.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg

 nicht angemeldet
 nicht angemeldet Der Martin
 Der Martin