1. Demonstration
of Mapserver
Tim McGuire demonstrated Mapserver, an open source mapping tool
that can be scripted with PHP
(as well as PERL, C, Java and TCL). Mapserver is a CGI program written
in C that works on multiple platforms and web servers. The program basically takes
information from files in Geographical Information System (GIS)
format (called shapefiles) and converts them
into image maps for the browser.
Each point or feature we can see on the image map (cities, forests,
lakes, roads, city blocks, etc) corresponds to a record in a database
associated with the shapefile. So, you can
script it with PHP to run queries on locations ("Tell me census data for
this city block when
I click on it") or render the map differently based on user specifications ("Turn all
the lakes with high mercury levels green"). We spent a lot of
time testing out http://maps.dnr.state.mn.us/landview/
which is a mapserver based application where you can look at air photos,
land use, roadmaps, etc of Minnesota.
More information and downloads at: http://mapserver.gis.umn.edu/ I downloaded it
and stuck it in my apache directory with PHP Triad and it was fairly easy
to set up a demo and start making a functional mapping
application.
Examples of PHP used
with mapserver :
Disease
Surveillance
http://cythera.ic.gc.ca/dsol/cancer/m_cd_e.phtml
Flu Season
Maps
http://www.hc-sc.gc.ca/hpb/lcdc/bid/respdis/fluwatch/index.html
Mapserver is an open source competitor to Mapquest
and ESRI's ArcIMS (internet map server) both of which run into the
thousands of dollars and don't run on all platforms. ESRI is the
coin of the realm when it comes to GIS. They have some cool looking
internet mapping applications: http://maps.esri.com/
2. Discussion of LDAP.
I couldn't follow the LDAP
discussion very well. Here is my best shot: LDAP stands for
Lightweight Directory Access Protocol. The easiest way to think of
it is that you would use it in
an application INSTEAD OF a regular relational database in cases where
you were presenting hierarchical directories. Users query LDAP servers using TCP/IP. Typical uses for LDAP
are phone book applications and organizational structures. Since all LDAP servers
use the same protocol, one LDAP server can direct the user
to another LDAP server to complete their search and the servers
themselves become part of the directory. LDAP servers can be accessed with PHP. Anyway,
installing LDAP can have pitfalls and the main pitfall discussed today was
that Red Hat doesn't enable LDAP by default.
"Unless LDAP is specially configured, it currently
transfers passwords across networks in clear text, which is unacceptable,"
Red Hat says it solved this problem by disabling LDAP;
during installation it can be correctly enabled by experienced
administrators. "
So, to install LDAP on
red hat, you need to do a custom install. Mike Doyle said
he would do a demonstration of LDAP at the next meeting.
3. Pizza
4. Building HTML Reports:
A discussion about how to handle totals and subtotals when using PHP to
publish web based reports. Using MySQL, solutions are pretty
much limited to:
- load the result set from the database into a php array and then
perform calculations of totals and subtotals using the
array. - Use more than one query.
If you have
tens of thousands of extra dollars or work for an organization that does,
databases like Oracle have functions that allow you to send the totals and
subtotals as part of the result set. You can then write custom functions
that append HTML tags such as <B> and <FONT SIZE = +1> when a
subtotal row is encountered.
5. PHP Pro Bono:, An early version of AmyQ is
available for download from sourceforge. It allows you to build a
list of Frequently Asked Questions and sort them by how often they are
selected. AmyQ still needs the ability to search, add entries and
add anwsers. If you would like to help out with these, contact jwynia@phpgeek.com
.
6.
How to contribute to TCPHP UG web site: contact Allie Micka.
7. Ideas for next meeting: demostration of LDAP (Mike Doyle), demonstration of Code Charge (Kevin)
8. Tim volunteered to write up minutes. Contact him for any corrections.
9. TO DO:
- Submit requests for future meeting topics.
- Download and install AmyQ
