Upload data from computer to remote webserver/mysql database


I'm looking for some advice, basically i run a script on many windows based computers that creates an xml file,  I would like to know if it's possible to transfer this file to my remote web server that runs apache/php/mysql, basically i want to populate the database with some of the values of the xml file, I ok i think with importing the data when it arrives just unsure on how i would achieve the initial transfer.

Could i use something along the lines of powershell with curl, or would i need to investigate potential learning some programming to achieve this. I have 0 programming knowledge but am willing to learn if this is required.

Obviously there may be several ways to achieve this, looking for possibly the easiest  way to do it without learning programming but if that's not possible writing an application would be an option.

Thanks in advance
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

curl is perfect for this sort of thing. I usually make a batch file that runs periodically with a curl command in it.

curl  url -H "Content-Type: text/xml" --data-binary "/path/to/file"

where url is the receiving script

Another option is to harness the program that generates the xml initially to see if that can send the data to the databse.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
HCommsAuthor Commented:
Thanks mankowitz, i will test this out and update post
hmm... curl speaks http but not the mysql protocol.

if you have a web service around, that can handle the xml files, a single curl, wget, or whatever equivalent command might do the trick. if not you'll most likely have to convert the xml first, either directly to sql queries if your sql server is available from your location (which is unlikely if it is in a distant location) or to whatever the available service wants which may be csv, json, or possibly xml but most likely with a different structure...

give us more information regarding your setup, a sample xml, and relevant db structure information


a simple xml in which you want to extract a few fields and generate an insert query from, might be quite trivial if the server is available or if it is fed by a decent web service. other cases might require some programming skills
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

@skullnobrains: mysql does speak http, but I'd still probably put a script in between because that's what I'm used to.  see http://blog.ulf-wendel.de/2014/mysql-5-7-http-plugin-mysql/
HCommsAuthor Commented:
Hi guys, apologies i have not gotten back to yous on this, i have had other work commitments, I will follow up the suggestion shortly and let you know my results.

Thanks again for input
HuaMin ChenProblem resolverCommented:
You need to create the ODBC connection to the Database, to upload the Xml file to the database.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.