FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Send .csv file to browser
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Send .csv file to browser [message #170041 is a reply to message #170040] Wed, 06 October 2010 17:52 Go to previous messageGo to previous message
sheldonlg is currently offline  sheldonlg
Messages: 166
Registered: September 2010
Karma:
Senior Member
On 10/6/2010 12:36 PM, Jerry Stuckle wrote:
> On 10/5/2010 10:19 AM, Derek Turner wrote:
>> I want to use MySQL to get a list of email addresses and names and then
>> output a .csv file to the browser so that it can be saved and then
>> imported into Thunderbird etc.
>>
>> Having googled around I think the solution will be:
>>
>> 1. Create and open a local file for writing
>>
>> 2. Write the data to the local file and close it
>>
>> 3. Use appropriate header files and then readfile()
>>
>> 4. Delete the local file
>>
>> Questions:
>>
>> 1. Is this a reasonable approach? Or should I be outputting to the
>> browser on the fly? Or using PEAR or something like that?
>>
>> 2. Can the headers appear appear anywhere in the script or must they be
>> be the first lines?
>>
>> Other questions depend on your answers to those two, so I'll keep them to
>> myself for the moment.
>>
>> <off topic>
>>
>> I've exported from TB to see what its .csv output file looks like.
>>
>> 1. Do I really need to include all those fields?
>>
>> 2. Will, for example, OE import them properly?
>>
>> </OT>
>>
>> tia
>>
>> Derek
>
> OK, since no one else posted it and I have some time:
>
> $sql = 'query here'';
> result = mysql_query($sql);
> if ($result) {
> $outfile = fopen('php://output', 'w');
> header('Content-Type: text/csv');
> header('Content-disposition: attachment; filename=data.csv');
> while ($row = mysql_fetch_array($rsc)) {
> fputcsv($outfile, $row);
> }
> fclose($outfile);
> }
>

Two errors that immediately pop up.

Your second line is missing the dollar sign.
Your mysql_fetch_array uses $rsc, not $result.

Also, I posted something similar where I used $rsc.

--
Shelly
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: file access permission?
Next Topic: Process queue without cron jobs
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Sat Nov 30 11:46:43 GMT 2024

Total time taken to generate the page: 0.04460 seconds