Jump to content

PHP MYSQL Array


johntp

Recommended Posts

Hello,

 

We are currently using the following code to have state, and zip codes auto-filled when you choose a city. I would like to convert it to a database that it gets the info from. I have tried many different ways with no success. Could somone please give me some advice as to how i can do this?

 

<?php

$cities = array(
array('city'=>'New York', state=>'NY', zip=>'10001'),
array('city'=>'Los Angeles', state=>'CA', zip=>'90001'),
array('city'=>'Chicago', state=>'IL', zip=>'60601'),
array('city'=>'Houston', state=>'TX', zip=>'77001'),
array('city'=>'Phoenix', state=>'AZ', zip=>'85001'),
array('city'=>'Philadelphia', state=>'PA', zip=>'19019'),
array('city'=>'San Antonio', state=>'TX', zip=>'78201'),
array('city'=>'Dallas', state=>'TX', zip=>'75201'),
array('city'=>'San Diego', state=>'CA', zip=>'92101'),
array('city'=>'San Jose', state=>'CA', zip=>'95101'),
array('city'=>'Detroit', state=>'MI', zip=>'48201'),
array('city'=>'San Francisco', state=>'CA', zip=>'94101'),
array('city'=>'Jacksonville', state=>'FL', zip=>'32099'),
array('city'=>'Indianapolis', state=>'IN', zip=>'46201'),
array('city'=>'Austin', state=>'TX', zip=>'73301'),
array('city'=>'Columbus', state=>'OH', zip=>'43085'),
array('city'=>'Fort Worth', state=>'TX', zip=>'76101'),
array('city'=>'Charlotte', state=>'NC', zip=>'28201'),
array('city'=>'Memphis', state=>'TN', zip=>'37501'),
array('city'=>'Baltimore', state=>'MD', zip=>'21201'),
);	

// Cleaning up the term
$term = trim(strip_tags($_GET['term']));

// Rudimentary search
$matches = array();
foreach($cities as $city){
if(stripos($city['city'], $term) !== false){
	// Add the necessary "value" and "label" fields and append to result set
	$city['value'] = $city['city'];
	$city['label'] = "{$city['city']}, {$city['state']} {$city['zip']}";
	$matches[] = $city;
}
}

// Truncate, encode and return the results
$matches = array_slice($matches, 0, 5);
print json_encode($matches);
?>

Link to comment
Share on other sites

I don't think I explained well enough, but thank you for your answer.

 

I created the database "location" with the columns "city", "state", and "zip". I inputed the information in the database. My question is how do I output the MYSQL query into an array.

 

I have tried the following but I think I'm doing it wrong.

<?php
//error_reporting(E_ALL);
//ini_set('display_errors', '1');
include "./php/connect.php";

$query_users = "SELECT * FROM location";
$result = mysql_query($query_users);
$new_array = array();
while ($row = mysql_fetch_assoc($result)) 
{
	$new_array["$row[0]"] => $row[1];
}
return $new_array;

?>

Link to comment
Share on other sites

I appreciate all the help. I figued it out.

 

<?php
include "./php/connect.php"; 
// Data could be pulled from a DB or other source

// Read records
$result = mysql_query("SELECT * FROM location;") or die(mysql_error());
// Put them in array
for($i = 0; $cities[$i] = mysql_fetch_assoc($result); $i++) ;
// Delete last empty one
array_pop($cities);

// Cleaning up the term
$term = trim(strip_tags($_GET['term']));

// Rudimentary search
$matches = array();
foreach($cities as $city){
if(stripos($city['city'], $term) !== false){
	// Add the necessary "value" and "label" fields and append to result set
	$city['value'] = $city['city'];
	$city['label'] = "{$city['city']}, {$city['state']} {$city['zip']}";
	$matches[] = $city;
}
}

// Truncate, encode and return the results
$matches = array_slice($matches, 0, 5);
print json_encode($matches);
?>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.