Ok, el ejemplo completo:
Código PHP:
<html>
<head>
<title>Pasar a CSV</title>
</head>
<body>
<?php
mysql_connect("servidor","user","pass");
mysql_select_db("bd");
$sql="select * from tabla";
$rs=mysql_query($sql);
$datos="";
if(isset($rs) && mysql_num_rows($rs)>0)
{
//numero de filas y columnas de conjunto de datos
$nrows=mysql_num_rows($rs);
$ncols=mysql_num_fields($rs);
//se recorre el recordset fila a fila, campo a campo
for($i=0;$i<$nrows;$i++)
{
for($j=0;$j<$ncols;$j++)
//se concatenan os valores
$datos.=mysql_result($rs,$i,$j).";";
//se quita el ; sobrante y se añade un salto de linea
$datos=substr($datos,0,strlen($datos)-1)."\n";
}
$archivo="archivo.csv";
//se pasa a un archivo, luego se crea un enlace
$fp=fopen($archivo,"w+");
fwrite($fp,$datos);
fclose($fp);
mysql_free_result($rs);
?>
<a href="<?php echo $archivo;?>">Bajar archivo</a>
<?php
}
?>
</body>
</html>