open All Channels
seplocked EVE Technology Lab
blankseplocked How do I get started?
 
This thread is older than 90 days and has been locked due to inactivity.


 
Author Topic

Callduron
Posted - 2011.07.14 04:41:00 - [1]
 

I'm interested in making a database site that uses the EVE API but it's been 15 years since I made a database and a decade since I made a website.

I want to read up, do tutorials etc but I don't even know what software I should be researching.

Can anyone give me some pointers to get me started please?

Tao Teh
Samurai Syndicate
Posted - 2011.07.14 04:49:00 - [2]
 

XHTML CSS PHP MYSQL JAVASCRIPT (JQERY - this is a javascript framework for fancy ui stuff) AJAX

The software you would need is, a text editor, a mysql client, a local apache server (lamp (Linux), mamp (mac)), stuff for graphics such as photoshop, fireworks etc...

"but I don't even know what software I should be researching"

This statement makes me think that all youve used before is a wysiwyg editor, such as dreamweaver, if thats the case... dont bother trying to work with the EVE API.

Kronus Heilgar
Dark Orbit Media
Posted - 2011.07.14 06:23:00 - [3]
 

Edited by: Kronus Heilgar on 14/07/2011 06:25:02
EDIT: apparently they don't like me using the word a-hole

Don't listen to the asshat above ^. Anyone can pick up the basics of the API, even if you've never done any web stuff before.

Here's an awesome link with info about the API: http://wiki.eve-id.net/API. I do a lot of development, and my entire suite consists of XAMPP, FileZilla, Dreamweaver, Photoshop, Eclipse, and a private server on Dreamhost (excellent hosting company, highly recommended if you're getting into it).

- XAMPP: local apache and MySQL host. Outstanding, easy to set up. You might need to make some tweaks to the PHP config file to get it set up, but there are lots of tutorials on that online

- Filezilla: FTP client, easy to use. If you're an old school linux guy, you can just do all that through command line

- Dreamweaver: HTML, PHP, and Javascript editor. Can do lots of other cool things like built-in FTP, but I don't bother with that stuff. Just stick with what you're comfortable with

- Photoshop: every website needs a logo or banner, or both. If you don't feel like learning the world of graphics design there are lots of EVE players who will help you out with that, for a price. Be warned though, many just take a couple images and overlay them in MS Paint. No skill.

- Eclipse: this is where I code my applications that use the API, either in C or C++, sometimes in Java if I need libraries that aren't available in the others. Depending on what you need to do with the API, you may also do this with PHP or other web languages; there are lots of libraries you can use to help you out (under the "API libraries" heading here).

- private server: you need somewhere to host your website. If it's small you can probably get away with a shared server, but if you're working with the API, more likely than not you'll need to run processes that are too long / memory dependent for shared servers. Whoever you host with can also provide you with a MySQL database.

Just post here if you have any more questions, us 3rd party devs are usually more than happy to help out a fellow community member.

Kron

Szet Kaplak
Posted - 2011.07.14 08:04:00 - [4]
 

Cullduron,

it seems you already have the basics if you have done a basic website a decade ago. However your knowledge is greatly outdated so I'd suggest with brushing up with XHTML or even HTML5 and css2-3.

W3cschool is a great site where you can get some information about the tags, css properties and so on. Best way to learn IMO is the trial and error approach.

As opposed to the post before me I would strongly recommend against Dreamweaver or any WYSIWYG editors as a matter of fact. You might be able to develop quick but sometimes they do not genereate valid code and the biggest problem with them is the fact that they mask the real markup. The QoC is a lot higher if you do the markup yourself and for me it's not slower at all.

I personally use Netbeans IDE and VIM for programming PHP, CSS and HTML. (As much as we can call it programming). Netbeans is easy to use but powerful enough to support you enough for RAD.

PHP is not at all a requirement. If you prefer, you could do Python, C#, whatever you just want since the API doesn't require you to use a specific language on your side. I think it's best to pick a programming language you were or are the most familiar with, in my case that's PHP.

The communication to the server is through XML (or CSV which is inferior in many cases). PHP does give you an easy to use api for parsing XMLs with SimpleXML. Communication could be handled with file_get_contents function in the early stages and then maybe cURL for SSH connection and whatnot.
PHP integrates very well with MySQL or anything pretty much but so do all the other languages people use for web programming.

Send me a message ingame if you got any question, specifics etc... Possibly I could help.

Regards

Callduron
Posted - 2011.07.14 17:40:00 - [5]
 

Thanks very much for your help.

Tbh, I'm out of my depth. I am interested in doing this but my skills are so basic that I can't even understand half of what's being said to me.

I think the next step for me is to refresh my skills with databases and do a SQL course. I used Access to build a relational database in 1995 so it's not too far removed from what I (used to) know.

From there the next step will be to figure out an internet interface to an originally offline database. Once I've done that I can look into using CCP's API system to automate data acquisition (primarily market data, what I want to build is similar to Eve Central but with different functionality).

Thanks ever so much for your help and let me know if you consider my proposed way forward a sensible one.

For reference my web skills consist of basic HTML which I used to reverse engineer a website at a firm I worked at 10 years ago. I did View Source, Copy all, edited the html text and links so I got a page that did the job we wanted. I never had a clue what half the code was doing but if it had frames when I cut and pasted it it still had frames after I changed some of the text and uploaded it as a new save. So by you guys' standard incredibly basic stuff (but it worked, the firm loved it and it's still in use). However I'll cross the bridge of figuring out how to build websites properly once I can build the database. After all a website with nothing in it is useless but an offline database based on manual data input can still help me figure out markets.

Zeta Zhul
Caldari
Preemptive Paranoia
Posted - 2011.07.14 20:00:00 - [6]
 

Edited by: Zeta Zhul on 15/07/2011 00:01:48
Edited by: Zeta Zhul on 15/07/2011 00:00:39
Edited by: Zeta Zhul on 14/07/2011 23:56:48
Personally I'm kinda getting into Yii as a php framework.

edit: ok.

MySQL:
(free) Community Server

(free) MySQL Workbench
-> MySQL Workbench is a GUI tool for managing MySQL servers, creating databases, tables, etc.

Apache:
(free) Apache web server

PHP:
(free) PHP web server scripting

W3Schools:
(free) online help/tutorials

...

Try: (free) Yii PHP framework

Here is the starter (free) screencast tutorial.

Watch the screencast. Additional videos on YouTube.

Yii tutorials

...

Also there is Pheal:
(free) Pheal api library

PHp Eve Api Library.

Kronus Heilgar
Dark Orbit Media
Posted - 2011.07.15 05:23:00 - [7]
 

Just wanted to mention that when I said I recommended Dreamweaver above, I didn't mean the WYSIWYG part of it. I ONLY ever use the "code" view, and hardcode it all myself. The reason I use dreamweaver for this is that it simply has an excellent markup view (good colour coding, etc.) and is pretty decent at highlighting errors in your code (forgetting to close tags, etc.).

Kossaw
H A V O C
Cascade Imminent
Posted - 2011.07.15 08:18:00 - [8]
 

Edited by: Kossaw on 15/07/2011 11:13:51
Edited by: Kossaw on 15/07/2011 08:23:01
Get PhP from here. Use the latest stable release. Dont use 5.4 until some other hero has worked out the bugs.

Forget Notepad or Wordpad style editors for PhP, we have moved on from the dark ages. I use NuSphere. Its not free, but it is excellent. Syntax checking, error highlighting, testing, debugging etc. made really simple. There are some reasonable free WYSIWYG editors but none I could find that offered good debugging. Zend is horribly expensive.

Yii framework was already mentioned. It takes a while to get your head around it but it produces nicely formatted and usable database applications in minutes if you use the code builder. Using a framework means that all the basic database access routines and user interface pages are built already. You don't have to figure out how to create a page from scratch every time. Yii is much easier to use than other frameworks like cake.

MySQL is a free database and, well, you'd be an idiot not to use it. Every man and his dog thinks its great.

If you are setting up your own MySQL server then use phpMyAdmin as an admin front end. Pretty much any commercial web hosting service that offers MySQL also uses phpMyAdmin.

I actually use Microsoft IIS as a web server. I can confirm it is a PITA and took me far too long to get working. But once its running its OK.

Check out "Yappeal" on this forum. Its a very complete interface to the Eve API. My only "complaint" is that I didn't find out how good it was until I'd already started building my own interfaces.

Put this lot together on your PC and you can have a running database application interfaced to the Eve API collecting data in a couple of evenings work.

Edit: Of course it seems easy now. It took me much more than a couple of nights when I started Wink

Zeta Zhul
Caldari
Preemptive Paranoia
Posted - 2011.07.15 14:21:00 - [9]
 

Edited by: Zeta Zhul on 15/07/2011 14:25:15
Another possibility of an integrated IDE/dev environment is to use Eclipse or NetBeans. Both are written in Java, multi-platform and are free.

...

Basically the more common setup is:

HTML = is where the *structure* of your webpages resides.

CSS = is where the formatting of your webpages resides.

PHP = is where the database or other server based processing resides; or another language if you prefer.

Javascript = is where the client side UI handling resides.

...

Frankly I'm not that enthused about buying books and trying to learn from them. In many cases if you're already and experienced software developer I think you're much better off using online resources. But at the end whatever is most comfortable for you.

A very useful resources is Stackoverflow which is a kind of clearing house of questions and answers about tech. And of course here in this forum and possibly this thread.

Dragonaire
Caldari
Corax.
PURgE Alliance
Posted - 2011.07.15 15:17:00 - [10]
 

Just to give you some other ideas on tools etc here what I use:
Editor for PHP, HTML, CSS, Etc Komodo the link is actually for the free version Komodo Edit which is what I start with but I have upgraded to the full IDE version now for the extra features it has but Edit is fully functional and works great.

For web server, PHP, MySQL (LAMP, WAMP) Bitnami They have what they call stacks that have everything integrates that makes setup like a 3-5 click process and has everything you need for any kind of development or learning you want to do and have version for Windows and Linux as well. XAMPP is ok but found it buggy for lots of things.

As far as tutorials etc W3schools is good. For HTML, CSS make sure you get some good books that have been written in the last couple years as they will teach you the most modern ways to do stuff without all to useless junk that had to be done in the past before the latest generation of browsers came out that followed the standards. I'm pressed for time right now or I would add a list here of some titles I've liked.

I would suggest for starting with using the Eve APIs you use a good library someone else has already made. Yapeal which I've made is good in that it takes the XML from the servers and transforms it for you into tables in a MySQL DB. The code is generally well commented also so you can start learning from it as you improve your skills. It's a great way to have some live data to learn with without taking a lot of time trying to do it all yourself from day one.

I'll probably add to this latter but that should give you a few new things to look at Wink


romex987
Posted - 2011.07.18 23:08:00 - [11]
 

YAY i finally figured it out.. :D


<?php

// Populate the following with your API Data
$apiKey = "your api key";
$userID = "your user id";
//$characterID = "PUT YOUR Character ID Here";

// Create the URL to the EVE API
$url = "http://api.eve-online.com/account/Characters.xml.aspx?userID=".$userID."&apiKey=".$apiKey;

//for use when i get this damn thing working
// $eveAPI = "http://api.eve-online.com/char/CharacterSheet.xml.aspx?userID=".$userID."&apiKey=".$apiKey."&characterID=".$characterID;

// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, $url);
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// $output contains the output string
$output = curl_exec($ch);
// close curl resource to free up system resources
curl_close($ch);

//Initializes the XML Parser
$xml = new SimpleXMLElement($output);

foreach ($xml->xpath('//row') as $row) {
ECHO ($row['name']);
ECHO ($row['characterID']);

}


?>

Johnathan Roark
Caldari
The Graduates
Morsus Mihi
Posted - 2011.07.19 03:11:00 - [12]
 

Edited by: Johnathan Roark on 19/07/2011 03:11:47
Originally by: Dragonaire
Just to give you some other ideas on tools etc here what I use:
Editor for PHP, HTML, CSS, Etc Komodo the link is actually for the free version Komodo Edit which is what I start with but I have upgraded to the full IDE version now for the extra features it has but Edit is fully functional and works great.



I like phpDesigner, but picking an IDE is like picking a car.

At the very least, get a copy of notepad++.


 

This thread is older than 90 days and has been locked due to inactivity.


 


The new forums are live

Please adjust your bookmarks to https://forums.eveonline.com

These forums are archived and read-only