phpyellowtm developer guide

Start | Customize | Payment | Questions

Change Log

Next Release information, historical version information, a To Do list and a Wish List are included in this document.

Next Release

File                       Action
no changes to date

phpYellow Pro - version 3.54 - August 6, 2003

This is a minor release with an updated /docs/start.php file and an updated footer privacy link. The listingType of MiniWebsite is commented out by default in the util.php file requiring all Pro Edition upgrades to make this change:

Users upgrading to 3.53 or higher must also paste this command into EasySQL:

update pycategory set rank=4 where rank=3

File                        Action
/docs/start.php             updated
footer.php                  fixed broken link

phpYellow Pro - version 3.53 - August 4, 2003

This is a minor release with an updated EasySQL file and a fix for the category processing to disallow use of the global * wildcard.

File                        Action
easysql.php                 updated to use PHP 4.1.2 super globals
categories.php              line 10: if(($_REQUEST['task'] != "Add") && ($task != "Register")):
                            // to suppress use of * as a category

phpYellow Pro - version 3.52 - August 3, 2003

The new features of this major release are renamable listing type labels (for example Bronze, Gold, Silver and Platinum labels), plus /structure help files for those who need a different page layout structure, a new listing type of Mini-Website, miscellaneous bug, logic or anomaly fixes as detailed below and a refreshed cosmetic interface.

File                           Action
yellow.css                     refreshed
netscape.css                   ditto
tellAFriend.php                added: $friendEmail = !isset($_POST['friendEmail'])?NULL:$_POST['friendEmail'];
registerResult.php             fixed $customerid logic bug - affects only "required" INSTAPAY listings
cookieTheCustomerID.php        !isset($_POST['customerid'])? $_REQUEST['customerid']: ...
adminresult.php                fixed delete all bug that was not deleting all selected records
adminConfirmDeleteForm.php     ditto
adminGoalControls.php          updated for renamable listing types
proSetCKEY.php                 updated for mini website page
licenseAgreement.html          updated, supercedes all previous licenses
header.php                     cosmetic
footer.php                     cosmetic
folder /structure              added - contains page structure layout help files
tellAFriend.php                cosmetic
contactus.php                  removed @ character warning suppression for easier email testing
proBuy.php                     line 214 is now: Listing price ... $currencySymbol $x_amount 
proProcessPayment.php          cosmetic
proBuy.php                     all customers will now receive an email invoice regardless of payment method 
footer.php                     changed privacy page link to yourPrivacy.php
privacy.php                    deprecated
listingTypeDescriptions.php    deprecated
proListingTypeDescriptions.php new
loginResult.php                updated to show proListingTypeDescriptions.php
proUpgradeMyListing.php        ditto
proCheckout.php                ditto
categories_build.php           the db table in 3.49 was hardcoded. If you do not use default table names do:
           line# 13: $query = "SELECT DISTINCT category FROM ". TABLECATEGORY . " WHERE ...

phpYellow Pro Edition - version 3.49 - June 5, 2003

The major new feature of this release is expanded search capability. Guaranteed Browse and Search using 'LIKE' - Guaranteed results (if Search by Category selected) are new. These are smart forms which check the database. They present categories for browsing only if matches exist in the database.

An optional listing payment duration of 6 months is added, but not shown by default.

File                           Action
proListingFeatured.php         see line 60: replaced notvalid email with 555-123-4567@no_email.nul
proListingPremium.php          ditto
proListingSponsor.php          ditto
installation files             misc upgrades
loginResult.php                bug fix
map_usa.gif                    contributed transparent image
userlogo/3.gif                 contributed transparent image
holdingHands.gif               contributed drop shadow image
link2us.php                    updated image
searchGuaranteedBrowse.php     new - thanks to http://www.emeraldmedia.com for innovative thinking
categories_build.php           new
search.php                     added Guaranteed Browse and Advanced Search - Guaranteed Results
proSearchGuaranteedForm.php    new
manageForm.php                 replaced categories.php with categories_build.php
proListingOneLine.php          cosmetic
contactus.php                  line 97 - removed extra line break which caused send mail to fail
proDuration.php                new
proCheckout.php                added optional 6 month duration for backwards compatibility
proBuy.php                     ditto, with switch block processing monthsGoodFor
faqs.php                       added contactus link, updated file
link2us.php                    added footer
tellAFriend.php                ditto
tellAFriend.php                added 2 line separators from sender name in note
bookmark.php                   accidentally omitted from last distribution
index.php                      updated to re-include bookmark feature
bookmark.jpg                   upload to /appimage
yellowresult.php               updated with a COMMON VARIABLE ASSIGNMENT BLOCK
new.php                        ditto
loginResult.php                ditto
adminresult.php                ditto

phpYellow Pro Edition - version 3.48 - May 28, 2003

The major features of this release include a new Developer Guide, updated checkout process with a new payment method called 'Test', a new 'Back' button for payment options, a new admin status control included with 'Manage listings', modified single line Sponsor results, logo upload enabled from admin as well as various minor cosmetic changes.

File                           Action

proListingOneLine.php          modified Sponsor handling
categories.php                 changed code for & a m p ; in 2 instances on line 82
backNextControlsForm.php       removed unneeded code
gateways/paypal/index.php      simplified Paypal gateway code and setup instructions
link2us.php                    updated for changed image
holdingHands.gif               gray color throughout
footer.php                     changed content
licenseAgreement.html          updated
adminGoalControls.php          updated
adminresult.php                updated listing display
adminStatusRecord.php          deleted, no longer used, adminOneRecord.php used instead
adminSetStatusControls.php     deleted, no longer used
listingTypeDescriptions.php    updated Sponsor description
yellowresult.php               added role, privacy and news as gettable variables in advanced search
docs/customize.php             updated
proListingOneLine.php          synchronized display template when clicked
proCheckout.php                updated
proProcessPayment.php          updated for paypal
proBuy.php                     removed unnecessary code
proCompanyKeywordSearchForm.php added conditional filename display, changed default to 'description'
nav.php                        enabled logo upload from admin for Pro users only
admin.php                      ditto
adminresult.php                ditto
adminLookupCustomeridForm.php  new, ditto
adminLoadLogoForm.php          new, ditto
search.php                     cosmetic only
customize.php                  added documentation
registerResult.php             removed extraneous code
admin.php                      added comments
listingTypeDescriptions.php    abstracted the currency character to CURRENCYSYMBOL
proCheckout.php                ditto
help.php                       extra quote character removed from title
nav.php                        corrected for INSTAPAY of "off"
upgradeThisListingNow.php      ditto
proBack.php                    new
proCheckout.php                simple formatting - td valign top to customer table
paymentByWireInfo.php          modified to generic template
paymentMethodsList.php         updated - added test and split paypal and credit card by internet
proBuy.php                     updated
installSecurity.php            fixed broken links

phpYellow Pro Edition - version 3.46 - May 15, 2003

This is a significant version release with many new features. The database structure was left unchanged. This allows you to upgrade without changing the database records or table structure. All files are changed.

File                           Action
see release candidate changes below
searchDefault.php              added custom case :)
footer.php                     added logo and version
/docs                          updated
loginResult.php                removed code from 	case "Offer Contact Image Form":
proImagesUploadResult.php      commented out permission text
proImageLogoUploadResult.php   ditto

Release Candidate phpYellow Pro Edition - version 3.44

phpYellow Pro Edition - RC version 3.44 is available on request to current registered and licensed users of the Pro Edition.

This release has all files affected. Installation requires the replacement of ALL files. Create a parallel folder structure and place the new files into a separate folder. Uses the same dataset.

The key new feature is the availability of paid sponsor, featured and premium listings in every category. A new list with over 2600 categories is available. A popup 'picker' form lets you easily choose listing categories. Your chosen default search is now configurable in util.php. New Admin edit ckey form. New admin auto expiry link. All files changed. Please report any and all bugs.

Note: the Developer Guide has not yet been updated to reflect the new changes.

File                              Change

All files are affected

Version 3.36 Released April 23, 2003

This is a minor release for both editions, adding the Browse search form to the index page as a DEFAULT_SEARCH. DEFAULT_SEARCH was also moved into the free portion of util.php. Only 2 files were changed: index.php and util.php

... remaining history was archived.

TODO LIST



> can you tell me how I can use the Multilanguage-Version for my =
> Premium-Version? I only need the german languages file and maybe the =
> english. I have download the mulitlanguage version too, but I don`t know =
> how I can use the languages files.

WISH LIST



(1) have "get map" featured invisible if address shows as PO Box


The script does not, but perhaps should, query the database as to the old listing time remaining and add that on to the newly purchased duration. 


> Would like you to consider making it possible to Enter your listing into 
mor than one category.
> 
> For example a plumber might want to be listed among contractors as well 
as emergency services.A ship chandler may want to be listed among ship 
chandlers as well as hardware providers and tool providers.
> 
> When entering their listing they might sue \"multi-select\" from the 
drop down box to select categories.



The company description when registering in the registerunifiedform.php
I have set to a maximum of 700 characters for basic listings but have
not changed it on the yellowresult.php description form. This allows me
to control the amount of text for the freebies. No a big deal but I
have some visitors that want to take advantage of the system and create
a freakin web page out of a free listing.




Other - Think about truncating the description area for basic, allowing
a bit more for preferred and allowing full presentation of first page
listings.



I think this is VERY important to EXCLUDE certain phrases from the
description area e.g. you@yourdomain.com and www.yourdomain.com
This would help in future upgrades with people being able to steal
listings which they should be paying for. I find myself editing about 2
listings a day!


for each menu and task add "tips" or put actual help text in the white area,
this would put the instructions in the users face.  Each button would
produce a set of different instructions allowing the user to note that they
have moved to a different process.  Possibly note in the initial
instructions that the "green bar" is the indicator of where the user is in
the menu process.



a better and easier way to simply delete images


in the install script the script should attempt to create a database:
		> Ok! Sorry for being so stupid but I did not see the instructions before and
> thought your script created the database as well.



Recurring payment 

logic for image uploads for the 2 new category images.



I have seen your PHP Yellow Pages application. There is the lack of only one feature that
is keeping me from purchasing your product. It would be appreciated if you could consider
applying link/navigation functionality to the navigational paths relevant to categories
and their contents. Example: The following text should be navigation orientated so that
the user does not have to constantly click back on their browser:  Advanceded Search >
by Category: Computer Software > All listings

All pages should ideally contain a navigational path so that users can \"back track\"
without having to use the back button on their browser.



complete Netscape 4.7 compatibility review, again...



> 
> 2.) Many of the problems with netscape users can be traced back to unclosed
> or overlapping tags. be very careful with these if you need to demonstrate
> compatability with older browsers as I do .
> 
> At any rate working with this package has been fun and I wonder if I might
> float a couple of ideas into the mix for consideration.
> 
> 1.)  Would it be feasible to add a table to the category process so that
> the actual value in the category field would be a code the added table
> would act to translate the value into a string for display. Using  a
> logical code for the value in the Category table might allow some
> interesting options. It might also be useful in adding subcategory options
> in the future. Then too it might present management challanges for users..
> have to do some more thinking on this.
> 
> 2.)  It would be nice if  we could use the dynamic listing process and
> display to show the listings in the sub-jurisdiction, IE Show all listings
> initially and then show only the listings for a subjurisdiction or country
> as we drill down to the local area.




> the field to fill in for 'organisation" is a very powerful message media,
> I'm thinking it is somewhat limited when it is placed in register.php.  If
> it could be moved to the upgrade>edit area then any registered person could
> place many ads with separate titles.  Take for example Bert Johnson who has
> a Landing barge (marine), a business to advertise and a car for sale, with
> the current configuration he will have an interesting time coming up with a
> title (organisation) to cover all three.  If moved to the upgrade>edit area
> your original phpyellow blue print will still work, for example Ford Motors
> registers, and then every car Mike wants to sell simply gets listed with the
> same organisation title of Ford Motors (he may have to fill that in for each
> ad...not a big deal).  Currently I have cheated the system by using various
> email addresses


> 
> Eventually we would like to add script that allows the addition of coupons that 
	somehow integrates with an opt-in list for those wanting to receive coupons from 
	certain business listings.

> 
> Our aim of use for your software is to setup a tricounty area search engine/business 
	listing that eventually has the capabilities to let the businesses post/email out coupons 
	to opt-in distribution lists for a fee ...should work great for Tourism areas and restaurants
> 





It would be nice to have a version that was already stripped without backgrounds, 
	limited images, etc. for those that are customizing it anyway. Just a suggestion.




> Do you support searh alphabetically so customer click on any alphabet letter
	to access the company name. How to list all tiems in alphabet order.



> phpYerllow Pro edition is very good option for my website if only can allow, 
	in addition to the headers and footers, a left and right side navigation bars 
	fully customizable through aa administrator control panel for those who have 
	zero knowledge in php like my self. I only have a basic HTML knowledge and i 
	cant afford my self a php programmer in order to customize the look and feel 
	of the pages.





does PHPYellow track any sort of statistics regarding how many times a listing has appeared, 
	or been selected for a detail view, etc.?



> (maybe a htmlcode check function to allow custom tags   
	like b ul etc... for the \"Description\" field only?).






can either the Lite or Premium versions be used on a
WAP site? and results displayed in .wml docs via php ?



> how hard would it be to ad a little "this ad has been viewed xxx times" script?
I was thinking... what if I have results on all searches list just a few
record fields... then it clicks to the whole record (which includes the
file that gets counted as a hit or view) so only the whole record view gets
counted.
____________________
Note: see contributed script which does this.


> May be you need add an option to edit and add categories via webpage

multiple listing payment in checkout - more than one listing at a time


1) User language(s):
a) for the beginning: German
b) later a selective multi lingual approach would be necessary (=
advertiser can place the same add in several languages – the internet search
user can choose his language to view the ads)
2) Privacy mail:
the advertiser can choose if he wishes to activate the privacy mail feature
3) Categories:
a) Each category needs the option for a different set of data fields
(i.e. automotive, jobs, insurance, business opportunities, real estate etc.)
to accommodate the different objectives for the offer
b) the search parameters in each should be accordingly different


6) Multiple ads:
advertiser wishes to place several adverts
a) possibility to import from a structured data sheet (.xls, etc.) or
text file (.txt, .doc, etc.)
b) import gateway to other internet programs i.e. Multiple Listing
Service with realtors
7) User help:
is there a possibility to write help texts for various functions
8) Payment - necessary are the following features
a) international Credit Card processing in multiple countries
b) automatic renewing charge function
c) export of data in order to submit charge orders to the bank
9) Various charge options:
a) distinction between private and commercial advertiser
b) charge plans
(1) general (default) charge plan
(2) option of predefined charge plans
(3) individual charge plan per customer
c) promotions i.e.
(1) every advert placed in June gets one month free of charge
(2) first three months free of charge
(3) place 2 adverts, third free etc.
d) additional charge parameters i.e.
(1) charge for adverts with photo(s)
(2) charge for own URL-link
(3) charge for extra visibility
(4) charge for priority ranking etc.



========================


Have you created anything like directory listing program
that displays complete pages for each entry?



My dream is a search form searches everything by default with
> no need to select Keyword or Company, and a search that searches the
> first and last names.  I continue to hope.



> I thinking about maximizing revenue stream from paid
> Yellow Pages. Below is description of functionality
> which could maximalize revenue for every Yallow Pages
> I think.
>
> I. There should be more premium listing types in
> Yellow Pages which affects search results. All result
> is for practice areas (which is just your category)
>
> 1. First for whole US (will be most expensive). For
> each of practice areas only one purchase is allowed.
> So only one lawyer or lawyers company could purchase
> Fist in whole US for persion. This will appers always
> first in search result. Border of first in US will be
> three frames.
>
> 2. First for whole State. For each practice ares (your
> category) and for each state only one could be
> purchased. In search result this will appers second
> after first in US if first in US exists for practice
> area (your category). If there is no first in US for
> practice area first in State will apper first. Border
> of first in State will be two frames.
>
> 3. First for whole County (you could add county fild
> to database) - only one for county could be purchased.
> Work the same as 1 and 2 exept will appers third in
> first in US and state exist. Will appers second if one
> of first in US or State exists. Will appers first if
> first in US and State do not exist. Border of first in
> County will be in very bold frame.
>
> 4. First for City. - only one for City could be
> purchased. Works at 1,2 and 3. Only one could be
> purchased for practice area (your category) for City.
> Will appers after County. Will be 4 if exists US,
> State and County. Will be 3 if exist two from US,State
> and County. Will be 2 if exist one from US,State and
> County. Will be first if there is now US, State or
> County purchsed. Border of first in County will be in
> middle bold frame.
>
> 5. Premium Listing will be in frame. Unlimited number
> could be purchased for practice area (your category).
> Will be displayed after 1,2,3,4 from nearlest to
> farest insite Premium listing from zip code.
>
> 6. Basic listing without frame. Unlimited number could
> be purchased for practice area (your category). Will
> be displayed after all Premium listing and from
> nearlest to farest from zip code.
>
> Comment to 5 and 6. Zip code will work insite premium
> and basic listing so all premium listings will be
> displayed before basic leasting even if particural
> premium record will be farrer from zip code then
> record in Basic listings.
>
> II. Little change to payment. In payment should be
> amount limit for which customer can use credit card.
> For example if amount of bill will be greater then
> $200 customer must use differen payment that credit
> card(to big for credit card proccessing) so credit
> card check box will be unavailabe (or gray) with
> comment then total amount is more then $200 so we do
> not accept crdit card for bigger amount then $200.
> This could be system variable so it could be set to
> another amount easily like $300 or another.
>




> * comment system. People should be able to write comments on certain
> companies (comments should also have the possibility to be reviewed first)
> * html field for paid listings (so paid listings can insert some html text
> in their ad)
> * improve admin interface.
> * themes ?


Can you custome make a copy of PHP-Yellowpages for me with a review this site feature and a 5 star, 
rate this site feature? if so can it be with a registration for visitors who then would place there 
comment and to be able to rate the site. as far as reviews...it would be e-mailed to the owner of 
the ad so that they can respond to the poster by e-mail. This feature should have cookies so that 
only one post per visitor. give the option of sending another image with a second ad, 


4. Add pager field



Interface:


3. Highlight the category that has new entries since
the last time (day/week)
4. Display the last time the business was updated (is
it in the lastupdate field of contact?)


Data model:
1. Add a field to records the business

Configuration:
1. business submittion should be on pending until
approved by administrator to prevent from bad entry.
It should be configurable when log in as admin.

Integration:




Ideally we would want to have paid listings
and a way for the client to make coupons
with your system..
like http://rlaj.com/scripts/bizdirectory/biz-dir.html


> 5.  Does it have business review feature?  I want user
> to be able to rate the company's service.



2) Create one table for register visitors (B2C) that want to receive emails campaign.

3) Create one function for sending emails campaign:
Visitors (B2C), Company (B2B).




	> What do you think about parsing data from a large yellow pages database like
    > Infousa?  Then adding the results after my results.  




	Do you foresee a mass e-mail submit feature?? Would be great if the admin
could e-mail all non paying businesses, reminding them of premium options..

  I think it would be great to send out a reminder a
> week or so before ad expiration.

	

	email activation link for new listing submissions



	database abstraction layer


	convert Premium version to Multilingual


Start | Customize | Payment | Questions