This is a discussion on Parsing Excel spreadsheet to db within the PHP Language forums, part of the PHP Programming Forums category; What would one best recommend to parse an existing Excel spreadsheet (was done in Excel 97 or 2000 not sure ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
What would one best recommend to parse an existing Excel spreadsheet (was
done in Excel 97 or 2000 not sure to be honest)? I am looking for the most practical way of parsing an existing spreadsheet to place contents into a mySQL db. Thanx, Phil PS: can you use fopen() to read the contents and parse? The spreadsheet is on a remote site. |
|
|||
|
"Phil Powell" <soazine@erols.com> wrote in message news:aws7b.145605$xf.35957@lakeread04... > What would one best recommend to parse an existing Excel spreadsheet (was > done in Excel 97 or 2000 not sure to be honest)? I am looking for the most > practical way of parsing an existing spreadsheet to place contents into a > mySQL db. > > Thanx, Phil > > PS: can you use fopen() to read the contents and parse? The spreadsheet is > on a remote site. > > i don't know how big your spreadsheet is, but you could save the excel spreadsheet as a "csv" type file, then use fopencsv() to read it, then use explode() to create columns out of each row (thus giving you a multi-dimensional array breaking values down to an excel cell)... You could then use this array as your source data and send it to mysql. |
|
|||
|
I would, but I have neither Microsoft Excel nor do I have the spreadsheet
locally (were I to do so since not having Excel it would not be able to do anything with it.) Since I can't convert it to .csv because of that, what do I do? Thanx Phil "Randell D." <you.can.email.me.at.randelld@yahoo.com> wrote in message news:g7t7b.932607$3C2.21222945@news3.calgary.shaw. ca... > > "Phil Powell" <soazine@erols.com> wrote in message > news:aws7b.145605$xf.35957@lakeread04... > > What would one best recommend to parse an existing Excel spreadsheet (was > > done in Excel 97 or 2000 not sure to be honest)? I am looking for the > most > > practical way of parsing an existing spreadsheet to place contents into a > > mySQL db. > > > > Thanx, Phil > > > > PS: can you use fopen() to read the contents and parse? The spreadsheet is > > on a remote site. > > > > > > i don't know how big your spreadsheet is, but you could save the excel > spreadsheet as a "csv" type file, then use fopencsv() to read it, then use > explode() to create columns out of each row (thus giving you a > multi-dimensional array breaking values down to an excel cell)... You could > then use this array as your source data and send it to mysql. > > |
|
|||
|
"Phil Powell" <soazine@erols.com> wrote in message news:NIv7b.146397$xf.117696@lakeread04... > I would, but I have neither Microsoft Excel nor do I have the spreadsheet > locally (were I to do so since not having Excel it would not be able to do > anything with it.) > > Since I can't convert it to .csv because of that, what do I do? > > Thanx > Phil > > "Randell D." <you.can.email.me.at.randelld@yahoo.com> wrote in message > news:g7t7b.932607$3C2.21222945@news3.calgary.shaw. ca... > > > > "Phil Powell" <soazine@erols.com> wrote in message > > news:aws7b.145605$xf.35957@lakeread04... > > > What would one best recommend to parse an existing Excel spreadsheet > (was > > > done in Excel 97 or 2000 not sure to be honest)? I am looking for the > > most > > > practical way of parsing an existing spreadsheet to place contents into > a > > > mySQL db. > > > > > > Thanx, Phil > > > > > > PS: can you use fopen() to read the contents and parse? The spreadsheet > is > > > on a remote site. > > > > > > > > > > i don't know how big your spreadsheet is, but you could save the excel > > spreadsheet as a "csv" type file, then use fopencsv() to read it, then use > > explode() to create columns out of each row (thus giving you a > > multi-dimensional array breaking values down to an excel cell)... You > could > > then use this array as your source data and send it to mysql. > > > > > > If you don't have the Excel file locally, how do you expect PHP to process it? If you can get it via a hyperlink, then I make the assumption then that you have an "xls" type file - I don't believe there's an existing function that would open it for you. Is it a one off task? If so, and you don't know someone who has Excel to convert it for you, then try OpenOffice.org (free and works on all versions of office documents up to Office 2000). Then re-save it as a "csv" type file. -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet? |
|
|||
|
See Below
"Randell D." <you.can.email.me.at.randelld@yahoo.com> wrote in message news:8py7b.933394$3C2.21274441@news3.calgary.shaw. ca... > > "Phil Powell" <soazine@erols.com> wrote in message > news:NIv7b.146397$xf.117696@lakeread04... > > I would, but I have neither Microsoft Excel nor do I have the spreadsheet > > locally (were I to do so since not having Excel it would not be able to do > > anything with it.) > > > > Since I can't convert it to .csv because of that, what do I do? > > > > Thanx > > Phil > > > > "Randell D." <you.can.email.me.at.randelld@yahoo.com> wrote in message > > news:g7t7b.932607$3C2.21222945@news3.calgary.shaw. ca... > > > > > > "Phil Powell" <soazine@erols.com> wrote in message > > > news:aws7b.145605$xf.35957@lakeread04... > > > > What would one best recommend to parse an existing Excel spreadsheet > > (was > > > > done in Excel 97 or 2000 not sure to be honest)? I am looking for the > > > most > > > > practical way of parsing an existing spreadsheet to place contents > into > > a > > > > mySQL db. > > > > > > > > Thanx, Phil > > > > > > > > PS: can you use fopen() to read the contents and parse? The > spreadsheet > > is > > > > on a remote site. > > > > > > > > > > > > > > i don't know how big your spreadsheet is, but you could save the excel > > > spreadsheet as a "csv" type file, then use fopencsv() to read it, then > use > > > explode() to create columns out of each row (thus giving you a > > > multi-dimensional array breaking values down to an excel cell)... You > > could > > > then use this array as your source data and send it to mysql. > > > > > > > > > > > > > If you don't have the Excel file locally, how do you expect PHP to process > it? If you can get it via a hyperlink, then I make the assumption then that > you have an "xls" type file - I don't believe there's an existing function > that would open it for you. > > Is it a one off task? If so, and you don't know someone who has Excel to > convert it for you, then try OpenOffice.org (free and works on all versions > of office documents up to Office 2000). Then re-save it as a "csv" type > file. > -- I can't install OpenOffice! the setup.exe file does absolutely nothing. I went to www.openoffice.org and downloaded the entire package for Windows 2000, and nothing happens. So I'm back to the drawing board! Phil > A: Because it messes up the order in which people normally read text. > Q: Why is top-posting such a bad thing? > A: Top-posting. > Q: What is the most annoying thing on usenet? > > |
|
|||
|
Phil Powell wrote on Tuesday 09 September 2003 23:34:
> I can't install OpenOffice! the setup.exe file does absolutely nothing. I > went to www.openoffice.org and downloaded the entire package for Windows > 2000, and nothing happens. So I'm back to the drawing board! > There is one other way. If you have or have access to Excel ODBC drivers, you could set up an ODBC data source pointing to the specified Excel file with defined tables inside the spreadsheet. Then you could use the ODBC connection from PHP to access data from Excel spreadsheet like you would to other databases. One thing to keep in mind is that - Excel file has a proprietary format. If you do not have MS Office with Excel, you don't have COM components that access Excel spreadsheets, you don't have Excel ODBC drivers, and you cannot install any other applications that would export Excel spreadsheet to a non-proprietary format (like text CSV or tab-separated file), then you are running out of ways of accessing data stored in that file format. -- Business Web Solutions ActiveLink, LLC www.active-link.com/intranet/ |
|
|||
|
See below - thanx
Phil "Zurab Davitiani" <agt@mindless.com> wrote in message news:%9B7b.2891$NS1.2574@newssvr25.news.prodigy.co m... > Phil Powell wrote on Tuesday 09 September 2003 23:34: > > > I can't install OpenOffice! the setup.exe file does absolutely nothing. I > > went to www.openoffice.org and downloaded the entire package for Windows > > 2000, and nothing happens. So I'm back to the drawing board! > > > > There is one other way. If you have or have access to Excel ODBC drivers, > you could set up an ODBC data source pointing to the specified Excel file > with defined tables inside the spreadsheet. Then you could use the ODBC > connection from PHP to access data from Excel spreadsheet like you would to > other databases. > > One thing to keep in mind is that - Excel file has a proprietary format. If > you do not have MS Office with Excel, you don't have COM components that > access Excel spreadsheets, you don't have Excel ODBC drivers, and you > cannot install any other applications that would export Excel spreadsheet > to a non-proprietary format (like text CSV or tab-separated file), then you > are running out of ways of accessing data stored in that file format. > > Exactly. I don't have Office so I wouldn't have the Excel ODBC drivers. I wound up sending the file to a colleague who converted it for me into CSV. Hopefully a one-time solution, other than that, I am powerless to do anything else. Phil > -- > Business Web Solutions > ActiveLink, LLC > www.active-link.com/intranet/ |