TalkPHP
 
 
Account Login
Latest Articles
» The basic usage of PHPTAL, a XML/XHTML template library for PHP
» Vulnerable methods and the areas they are commonly trusted in.
» Simple way to protect a form from bot
» The Basics On: How Session Stealing Works
» How to keep your forms from double posting data
Advertisement
Associates
Associates
techtuts Darkmindz
CSS Tutorials Tutorialsphere.com - Free Online Tutorials
Boston PHP SurfnLearn
Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old 08-22-2008, 05:52 AM   #1 (permalink)
The Wanderer
 
superthin's Avatar
 
Join Date: Aug 2008
Posts: 8
Thanks: 3
superthin is on a distinguished road
Default Where is my file?

Hi every body,

I am creating a small project to manage some books for my team. Exporting database to an Excel (*.xls) file is very important because an the team's member will use that file to import into an barcode printing application.

I found Class: MS-Excel Stream Handler (excel, xls, spreadsheet, read excel) - PHP Classes . This class is useful. I could get an Excel file like I expected (through download, cannot find file on server).

The problem was I cannot understand:

Code:
// line 9 to 15 in example_export.php from the class above

require_once "excel.php";
$export_file = "xlsfile://tmp/example.xls";
$fp = fopen($export_file, "wb");
if (!is_resource($fp))
{
    die("Cannot open $export_file");
}
$export_file = "xlsfile://tmp/example.xls";

What is xlsfile:// ? The class's author said that. It is protocol to generate Excel file.

I cannot find example.xls in any folder on my PC. If I change xlsfile://tmp/example.xls into absolute path like xlsfile://C:/temp/example.xls or any another, an error:

Quote:
Warning: fopen(xlsfile://c:/temp/example.xls) [function.fopen]: failed to open stream: "xlsStream::stream_open" call failed in...
(view source is $fp = fopen($export_file, "wb"); )
How to fix to get generated file?

I use Windows XP Service Pack 2. The web server is localhost use AppServ 2.5.10. The web server was installed in C:\AppServ as default.

Please tell me can I get my file. Which file was generated and store on server (NOT from download).


Thank you.
__________________
http://khoancatbetong.com - Vietnamese Concrete Technician Forum
superthin is offline  
Reply With Quote
Old 08-26-2008, 01:20 PM   #2 (permalink)
The Wanderer
 
tripy's Avatar
 
Join Date: Apr 2008
Posts: 7
Thanks: 0
tripy is on a distinguished road
Default

xlsfile:// is known as a protocol for your browser. Think like http://, or ftp://, or file://
Probably, it's used by IE and excel to open an excel file without having to physically create it.

But what strikes me is that you have an unix/linux/bsd file path notation in there:
/tmp/example.xls

Try maybe to look in the temp folder of your server/user, as /tmp is the regular temp place on linux.

But by the way, it's even way simpler than that...
Simply create an html table, and send an header like this:
PHP Code:
header("Content-Type:  application/vnd.ms-excel");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
before writing the table. Excel will open the html table like it was an spreadsheet...
tripy is offline  
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


All times are GMT. The time now is 10:35 AM.

 
     

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0