First PHP Project – Tournament Brackets

I mentioned on my twitter account that my very first project in PHP is used in production today, and I had a few people ask me what it was. So I thought I would show some examples of it in action. While I had done other things in PHP, this was the first time I had sat down and built someone by myself instead of just modifying someone else’s code. I built it for the very first time back in 2005, and since then have had to update it a few times. But it is still used regularly to host CEVO’s tournaments.

It basically is a system of managing a tournament bracket. Here is an example:

Example Tournament Brackets
Example Tournament Brackets

It basically is a PHP script that pulls from a database with key-value pairs. In a template file, in which you would create the bracket’s HTML, you would insert tags with an id. Then, depending on if you are viewing or editing it, it with either insert the value, or a input box used for changing the value.

There was a basic admin listing of the brackets that are active, as well as access to archived brackets:

Admin Panel
Admin Panel

You could add a new Bracket and select a template to use. When you select a template, it will show a preview of the template below.

Create a Bracket
Create a Bracket

Once you create a bracket, you can edit it. It isn’t pretty, but it gets the job done:

Editing a Bracket
Editing a Bracket

Here is an example of the finished product that I just created. If you want a better example, here is the recent League of Legends tournament bracket. While it isn’t pretty, it works. Some of the biggest problems with it is the editing and managing of the templates. You can only use some sort of WYSIWYG editor to be able to make sense of them, since they are a giant table. What that ends up leading to is template files with 2,000+ lines. It still amazes me this chunk of PHP code has been used over 1,000 times for different tournaments around the world.

One day we are going to rewrite the system to allow the end user to make their own templates, and more interaction & connectivity between the bracket and CTE (CEVO Tournament Engine). But until, my first real PHP project can continue to chug along just fine.

12 thoughts on “First PHP Project – Tournament Brackets

  1. That is a great project to have under your belt. I know of a few people/business’ that would be interested in that type of work. And for being built 6 years ago as your first project that is really impressive.

    Nice work

    Like

  2. Looks great, how may I obtain the script please?

    Like

  3. How can we get the code?

    Like

  4. Can I get the code from you for a project I’m working on?

    Like

  5. hi do you share the code?

    Like

  6. I have the same question
    where is the script and can we use it?

    Like

  7. Hi,

    nice project you got, can I have please the code? I would like to use it on my school-project. Thx

    Like

  8. So How can I buy the code from you?

    Like

  9. Hey everyone, sorry, but the code is not available for purchase or open-sourced. It is very ugly, kludgy, and is hard-wired into another software system. I’ll let you guys know if I ever do release and open-source version of it.

    Like

  10. Pretty nice, I really hope you will make the code open source some day, even though the code is clumpsy and ugly. After all it was your first project 🙂

    Like

  11. Hey im interested in the html that you are using to generate the bracket, is not publically available? (not the script, just html)

    Like

  12. Hi,
    This very pretty nice project, hi im just only a student, and im very interested in your work, it helps me alot to have a knowledge on how to do that, i’m working on that project and i don’t have any open source that i can work on it,uhm do you intend to give that someday? im looking forward on it. thank you very much, have a nice day.

    Like

Leave a Reply to Martin Cancel reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this:
search previous next tag category expand menu location phone mail time cart zoom edit close