Solved

How to pull out information from database using php

Posted on 2008-10-14
4
382 Views
Last Modified: 2013-12-13
I have a database of zipcodes in US. It was dumped in mysql. I wondering to make a php script that can pull out these informations and display to users.

User come to website >> Zipcode Search >>> Information gets pulled from database and being displayed to used.

For example.

http://www.zip-codes.com/zip-code/11369/zip-code-11369.asp

I have attached a code that was added in mysql.

Thanks


/* 1.) Drop Table if it Exists */
DROP TABLE IF EXISTS ZIPCodes;
 
 
/* 2.) Create Table */
CREATE TABLE ZIPCodes (
	ZipCode char(5) NOT NULL,
	PrimaryRecord char(1),
	Population int,
	HouseholdsPerZipcode int,
	WhitePopulation int,
	BlackPopulation int,
	HispanicPopulation int,
	AsianPopulation int,
	HawaiianPopulation int,
	IndianPopulation int,
	OtherPopulation int,
	MalePopulation int,
	FemalePopulation int,
	PersonsPerHousehold decimal(4, 2),
	AverageHouseValue int,
	IncomePerHousehold int,
	Latitude decimal(12, 6),
	Longitude decimal(12, 6),
	Elevation int,
	State char(2),
	StateFullName varchar(35) NULL,
	CityType char(1) NULL,
	CityAliasAbbreviation varchar(13) NULL,
	AreaCode varchar(55) NULL,
	City varchar(35) NULL,
	CityAliasName varchar(35) NULL,
	CountyName varchar(45) NULL,
	CountyFIPS char(5) NULL,
	StateFIPS char(2) NULL,
	TimeZone char(2) NULL,
	DayLightSaving char(1) NULL,
	MSA varchar(35) NULL,
	MSA_Name varchar(150) NULL,
	PMSA char(4) NULL,
	PMSA_Name varchar(150) NULL,
	CSA char(3) NULL,
	CSA_Name varchar(150) NULL,	
	CBSA char(5) NULL,
	CBSA_Type char(5) NULL,
	CBSA_Name varchar(150) NULL,
	CBSA_DIV char(5) NULL,	
	CBSA_DIV_Name varchar(150) NULL,
	Region varchar(10) NULL,
	Division varchar(20) NULL,
	MailingName char(1) NULL,
	PreferredLastLineKey varchar(10) NULL,
	ClassificationCode char(1) NULL,
	MultiCounty char(1) NULL,
	CityStateKey char(6) NULL
);
 
 
/* 3.) Create Indexes on most searched fields */
CREATE INDEX Index_ZIPCodes_ZipCode					 ON ZIPCodes (ZipCode);
CREATE INDEX Index_ZIPCodes_State					 ON ZIPCodes (State);
CREATE INDEX Index_ZIPCodes_CountyName				 ON ZIPCodes (CountyName);
CREATE INDEX Index_ZIPCodes_AreaCode				 ON ZIPCodes (AreaCode);
CREATE INDEX Index_ZIPCodes_City					 ON ZIPCodes (City);
CREATE INDEX Index_ZIPCodes_Latitude				 ON ZIPCodes (Latitude);
CREATE INDEX Index_ZIPCodes_Longitude				 ON ZIPCodes (Longitude);
CREATE INDEX Index_ZIPCodes_CityAliasName			 ON ZIPCodes (CityAliasName);
CREATE INDEX Index_ZIPCodes_PrimaryRecord			 ON ZIPCodes (PrimaryRecord);
CREATE INDEX Index_ZIPCodes_CityStateKey			 ON ZIPCodes (CityStateKey);
 
 
 
/* 4.) Create Extended Column Information */
ALTER TABLE ZIPCodes COMMENT = 'U.S. Zip Code Database  Deluxe (from www.zip-codes.com)';

Open in new window

0
Comment
Question by:nomie
  • 3
4 Comments
 
LVL 31

Expert Comment

by:Frosty555
ID: 22716593
Basic mysql in php:

1) Connect to the mysql server

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');

2) Select the database you want to use

mysql_select_db($dbname);

3) Execute a query against the database

$result = mysql_query("SELECT * FROM ZIPCodes");

4) Walk through the records

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    echo "Zipcode:{$row['zipcode']} <br>" .
         "City: {$row['city']} <br>";
     // process data however you want to, row by row.
}


Close the mysql connection.

mysql_close($conn);



A complete tutorial is available here that walks you through it from beginning to end.

http://www.php-mysql-tutorial.com/
0
 

Author Comment

by:nomie
ID: 22717862
I am reading the tutorial but my concern was search. I am very new at this and I am trying to learn how to fetch from database using search.
0
 
LVL 31

Expert Comment

by:Frosty555
ID: 22718174
search for records where a field matches a keyword

SELECT * FROM ZIPCodes WHERE sometextfield LIKE '%somekeyword%'

search for records where a field matches one of several keywords

SELECT * FROM ZIPCodes WHERE sometextfield LIKE '%somekeyword%'
OR sometextfield LIKE '%somekeyword2%'
OR sometextfield LIKE '%somekeyword3%'

search for records where a field contains ALL keywords

SELECT * FROM ZIPCodes WHERE sometextfield LIKE '%somekeyword%'
AND sometextfield LIKE '%somekeyword2%'
AND sometextfield LIKE '%somekeyword3%'

It is all fairly fast so long as your database doesn't grow into the millions of records. Then other searching methods, like keyword tables or fulltext indexes become something worth thinking about.
0
 
LVL 31

Accepted Solution

by:
Frosty555 earned 200 total points
ID: 22718177
More info on mysql pattern matching clauses:

http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html

Full-text search and full-text indexes:

http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Batch, VBS, and scripts in general are incredibly useful for repetitive tasks.  Some tasks can take a while to complete and it can be annoying to check back only to discover that your script finished 5 minutes ago.  Some scripts may complete nearly …
A quick Powershell script I wrote to find old program installations and check versions of a specific file across the network.
Learn the basics of modules and packages in Python. Every Python file is a module, ending in the suffix: .py: Modules are a collection of functions and variables.: Packages are a collection of modules.: Module functions and variables are accessed us…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question