This is a weekend project, not much practical use but it was fun to create. Hopefully you find techniques mentioned here useful.

Some our employees need to connect to our FTP server while travelling. As an extra protection measure we maintain a whitelist of IP addresses where connection is allowed from. We thought it would be nice to convert IP addresses to geographical coordinates and display them on a map. It worth saying that IP to latitude/longitude conversion is not 100% accurate and IP addresses get re-assinged all the time. However for our task it is not really important.


Continue Reading "Displaying IP addresses on the map"

By default PHPRunner/ASPRunner.NET provide “Delete selected” functionality. In some cases you need to be able to delete records individually. In this tutorial we will show how to add a delete button to each record. We will also show how to make it look as a regular edit/copy/view buttons.

1. Proceed to the List page in Page Designer and insert a button. Move it to one of grid columns. Set button style to “link-button” and choose icon “glyphicon-remove” as appears on a screenshot below.

Continue Reading "How to add a “Delete” button to each row in grid"

Normally tab order is determined by the web browser based on your Add/Edit page structure. If you have a single row two-column form browser will tab through first cell edit controls first before switching to second cell. If you place each control into its own cell it will tab through first row, then second, then third etc. The point is that you want to be in control and you need to specify tab order that fits your application logic. Luckily it is easy to achieve…Continue Reading “Changing default tab order”

Page Designer is one of the most amazing new features in version 10 but as any new functionality it also introduces a learning curve. In this article we are answering the most common questions people ask us about Page Designer usage.

If you have Page Designer questions that are not answered in this article feel free to ask here in comments or via helpdesk.

How to work with additional pages?

In version 10 you can add extra pages of the same type. For instance, besides the main edit page you can have extra edit pages named edit1, edit2 etc. The big question is how to use these additional pages in your application.

Changing button properties

Since we created multiple edit pages lets see how we can use those. On the List page select Edit button. On the right side using ‘Page’ dropdown select the page this button will open.

Continue Reading "Page Designer: Frequently Asked Questions Answered"

If you purchased or upgraded PHPRunner, or ASPRunner.NET less than one year ago logon to control panel at https://xlinesoft.com/dss/support.asp and find download links and registration keys under ‘My purchases’. There should be ‘Reg info’ link next to your latest upgrade purchase.

Note: Software maintenance coverage needs to be continuous. If your last purchase or upgrade were more than one year ago you have till February 28, 2019 to renew your maintenance. After that date you will have to purchase PHPRunner, ASPRunner.NET or ASPRunnerPro at the full price.

Continue Reading "PHPRunner 10.1 and ASPRunner.NET 10.1 are here!"

If you purchased or upgraded PHPRunner, ASPRunner.NET or ASPRunnerPro recently you may have noticed that we are using a new checkout solution based on Invoice template. In this article we will show you steps required to add this kind of functionality to your project.

To see how it works live proceed to PHPRunner purchase page, select Edition, enter your email address, add more options on the next screen and click Continue.

Continue Reading "Using Invoice template as a checkout solution"

Lets say you need to build an application that provides one time access to some information. It can be some files you let your users download, or some game they want to play, or some video to watch. Instead of distributing some sort of usernames and passwords you want to make this experience as easy as possible and provide access based on a simple numeric code. Such code can sent via email or text messages or handed as scratch card similar to one below.

Continue Reading "Single use access codes"

Lets say you run a mini-hotel and need to build a very simple reservation system. In this article we will show how avoid double-booking only showing the rooms that are available for selected date range. Similar approach can be applied to any other reservation system i.e. if you need to build conference rooms reservation app.

In our database we need two tables, Rooms and Reservations.

Continue Reading "Building a hotel reservation system"