Home ] [ Up ] [ Astro123 ] [ Vocation ] [ AstroWin ] [ Election Helper ] [ SE_Aspectarian ] [ MatchMkr ] [ ProgTran ] [ Transits ] [ Midpoint ]

PHP Scripts for Astrology Websites


My basic philosophy is this:

Do not charge people for something they can get for free elsewhere - that would not be fair to them.

Try to use whatever I have so that the most people can benefit from it.

Don't sell any of my free interpretations or reports because people can get them for free at my website.

Make people aware of my website so they may take advantage of all the tools I have there.

Common sense, practicality, and kindness should prevail.

We should never try to take advantage of others, only try to help them.

If people want to make donations to you or anyone else, then they should be free to do so ("Give as the heart dictates and the means permit").


1) Updated 30 July 2014 - Download website_database_scripts.zip in order to be able to set up a website that allows users to create and maintain their own personal database of data records so they may analyze many different types of astrological charts, including natal charts and reports, synastry charts including dual cosmodyne calculations, natal cosmodynes, solar arcs, progressions, solar and lunar returns, planetary hours, vocational analysis, composite charts, contest charts (horary and time of event), Davison relationship charts, transit charts and reports, horary charts, and Moon aspects along with void-of-course data. This set of scripts requires you to set up a MySQL database and is the same set of scripts used on my website at: http://www.astrowin.org/online_calcs_db/signup_login.php (except for the synastry interpretations, which I do not yet have permission to include in this package of scripts). Download this pdf file which gives you all the instructions for how to setup this database and its associated PHP scripts.

2) Download transits_form.zip in order to be able to set up a website that allows your users to see the transit planet aspects to their natal planets for any day. This set of scripts includes transit interpretations as well as the beginning, exact, and ending times for each aspect (within 8 days either side of the set transit date). Download sample output.

3) Download synastry_scripts.zip in order to be able to set up a website that allows your users to calculate and display synastry charts, aspect grids, and an interaspect listing. There are no interpretations provided and the dual cosmodyne calculations are not yet available as open source. Download sample output.

4) Download PDF_natal_reports_PHP_files.zip in order to be able to set up a website that allows your users to generate natal chart reports in PDF format.

5) Download natal_cosmodynes.zip in order to calculate and display natal cosmodynes. You will have to modify the "natal_cosmodynes.php" script because right now it only does a single natal chart (mine). Modify this script in whatever ways you need in order to get what you want to achieve. Add an input form or whatever - the code for calculating natal cosmodynes according to the methods of Elbert Benjamine is all there.

6) Download php_astrology_scripts.zip in order to be able to set up a website like what you can see here: click me (there is no "Right now where you are connecting from" script as that requires a large database). These scripts really replace the below - and there are more of them and the graphics are much improved.

7) Download natal_reports_PHP_files.zip in order to be able to set up a website that allows your users to generate and read the interpretation of their natal chart/natal horoscope.

8) Download transits_PHP_files.zip in order to be able to set up a website that allows your users to generate and read their daily transit interpretations.

9) Download right_now_PHP_files.zip in order to be able to set up a website that allows your users to see the planetary positions RIGHT NOW.


How to set up an astrological website using Allen Edwall's PHP scripts and the Swiss Ephemeris

1. First, you must have a web hosting service that provides you with a website that runs Linux and PHP (make sure the PHP GD graphics library is installed AND THAT THE FREE TYPE LIBRARY IS INSTALLED). Note: in order to run the Swiss ephemeris on Windows, you must use a Windows file called swetest.exe instead of the file named swetest. swetest.exe is not included in the script packages themselves, but you can click here to download it (copy swetest.exe and all the .se1 files into the same folder where your .php scripts are located). I do not recommend using a Windows server - there are issues with the PHP command mktime, among other things. Also, Windows does not run calculations very quickly using the Swiss ephemeris program swetest.exe - I wrote my own simple .dll file to do things much, much faster.

2. Take your downloaded .zip file and unzip it in a local directory. Using your FTP program, create the following sub-directory on your website's server:

   * for 6) above, /public_html/astrology_scripts and /public_html/astrology_scripts/sweph and /public_html/astrology_scripts/natal_files and /public_html/astrology_scripts/transit_files

   * for 7) above, /public_html/natal_reports and /public_html/natal_reports/natal_files

   * for 8) above, /public_html/transits and /public_html/natal_reports/transit_files

   * for 9) above, /public_html/Now

3. Upload the unzipped files to your website in the corresponding and respective directories. After that, CHMOD the file called swetest to 755 in the root directory you created (/public_html/astrology_scripts/sweph OR /public_html/natal_reports OR /public_html/transits OR /public_html/Now).

4. To test your website, visit www.yourdomain.com/astrology_scripts OR www.yourdomain.com/natal_reports OR www.yourdomain.com/transits OR www.yourdomain.com/Now

5. If you get 0.0 degrees for all planets, then either you did not upload swetest using binary mode or you did not CHMOD swetest to 755 or your webserver is not allowing you to execute the file called swetest. If the latter, you will have to ask your web host why swetest cannot run properly (or change web hosts).

6. Be sure to upload the file called swetest in BINARY mode, not ASCII mode nor AUTO mode.

7. If the graphics do not display properly you may have to replace every instance of sserife.fon with arial.ttf due to a bug in later versions of the FreeType library.

8. If your graphics do not work as expected, try replacing all instances of "arial.ttf" with "./arial.ttf" and "HamburgSymbols.ttf" with "./HamburgSymbols.ttf". Some servers are just "weird".


Click here to see a natal chart report in PDF format

Click here to see what the NOW page looks like (old-style graphics)

Click here to see what the NOW page looks like (Style 1 wheel)



last updated - 30 July 2014
Allen Edwall

All programs copyrighted