<?php
// This would be the format and sample conten of the data files to load
/* countries.txt
AF,AFG,AFGHANISTAN
AL,ALB,ALBANIA
BE,BEL,BELGIUM
BZ,BLZ,BELIZE
CM,CMR,CAMEROON
CA,CAN,CANADA
DK,DNK,DENMARK
DJ,DJI,DJIBOUTI
EC,ECU,ECUADOR
EG,EGY,EGYPT
cities.txt
Afghanistan;Herat
Afghanistan;KABUL
Afghanistan;Kandahar
Afghanistan;Mazar-i-Sharif
Albania;TIRANA
Belgium;Antwerp
Belgium;Brugge
Belgium;BRUSSELS
Belgium;Charleroi
Belgium;Gent
Belgium;Kortrijk
Belgium;La Louviïle
Belgium;Liïle
Belgium;Mons
Belgium;Namur
Belize;BELMOPAN
Cameroon;Douala
Cameroon;YAOUNDE
Canada;Brampton
Canada;Burlington
Canada;Burnaby
Canada;Calgary
Canada;East York
Canada;Edmonton
Canada;Etobicoke
Canada;Gloucester
Canada;Halifax
Canada;Hamilton
Canada;Kitchener
Canada;Laval
Canada;London
Canada;Longueuil
Canada;Markham
Canada;Mississauga
Canada;Montreal
Canada;Nepean
Canada;North York
Canada;Oakville
Canada;Oshawa
Canada;OTTAWA
Canada;Qu�ec
Canada;Regina
Canada;Richmond
Canada;Saskatoon
Canada;Scarborough
Canada;St Catharines
Canada;Surrey
Canada;Thunder Bay
Canada;Toronto
Canada;Vancouver
Canada;Vaughan
Canada;Windsor
Canada;Winnipeg
Canada;York
Denmark;COPENHAGEN
Ecuador;Ambato
Ecuador;Cuenca
Ecuador;Esmeraldas
Ecuador;Guayaquil
Ecuador;Machala
Ecuador;Manta
Ecuador;Milagro
Ecuador;Portoviejo
Ecuador;QUITO
Ecuador;Santo Domingo de los Colorados
Egypt;Alexandria
Egypt;Assyt
Egypt;Aswan
Egypt;Banha
Egypt;Beni-Suef
Egypt;CAIRO
Egypt;Damanhr
Egypt;El-Mahalla El-Kubra
Egypt;Faiym
Egypt;Giza
Egypt;Ismailia
Egypt;Kafr-El-Dwar
Egypt;Kena
Egypt;Luxer
Egypt;Mansra
Egypt;Menia
Egypt;Port Said
Egypt;Shebin-El-Kom
Egypt;Shubra-El-Khema
Egypt;Sohag
Egypt;Suez
Egypt;Tanta
Egypt;Zagazig
*/
/* Name: load_countries.php dbff sample
Author: Jerry Mattsson
Created/Updated july-05/oct-06
*/
require_once 'dbff.php';
/* load file
AF,AFG,AFGHANISTAN
AL,ALB,ALBANIA
DZ,DZA,ALGERIA
....
into file db
*/
print '<HTML><HEAD><BODY BGCOLOR="aqua">';
$file = 'countries.txt';
$delimiter = ',';
$countries_file = 'countries';
$countries_def = array (
'name' => array ('size'=>50, 'chkNN'=>true),
'iso2' => array ('size'=>2, 'pk'=>1, 'UPPER'=>true),
'iso3' => array ('size'=>3, 'UPPER'=>true));
$countries = new dbff;
$countries->file = $countries_file;
$countries->recdef = $countries_def;
$countries->changelog = FALSE;
$countries->rectype = 1;
$countries->trace = TRUE;
$rec = array ();
if ( !file_exists($file) ) {
print "File $file not found";
exit;
}
// read and insert
$fp = fopen($file, 'r') or die("Cannot open file $file");
print 'Reading Country File<br>';
while (!feof ($fp)) {
$str = trim(fgets($fp));
if (trim($str)<>'') {
$arr = explode($delimiter,$str);
$rec = array ( ucwords(strtolower($arr[2])), $arr[0], $arr[1] );
print 'Inserting '.$rec[0].' ';
if(!$countries->insert ($rec)) print $dbfferr.'<br>';
};
};
fclose($fp) or die("Cannot close file $file");
// done
print '<br>';
print count($countries->recs). ' Inserted<br>';
$countries->commit();
print_r($countries->errstk);
print '</BODY></HTML>';
exit;
?>
<?php
/* Name: load_cities.php, dbff sample
Author: Jerry Mattsson
Created/Updated july 05
*/
require_once 'dbff.php';
/* load file
Afghanistan;Herat
Afghanistan;KABUL
Afghanistan;Kandahar
Afghanistan;Mazar-i-Sharif
....
into file db
*/
print '<HTML><HEAD><BODY BGCOLOR="aqua">';
$file = 'cities.txt';
$delimiter = ';';
$countries_file = 'countries';
$cities_file = 'cities';
$countries_def = array (
'name' => array ('size'=>50, 'chkNN'=>true),
'iso2' => array ('size'=>2, 'pk'=>1, 'UPPER'=>true),
'iso3' => array ('size'=>3, 'UPPER'=>true));
$cities_def = array (
'id' => array ('size'=>10, 'type'=>'INT', 'pk'=>'sequence'),
'name' => array ('size'=>35, 'chkNN'=>true, 'uk'=>true),
'country' => array ('size'=>2, 'chkNN'=>true, 'UPPER'=>true, 'fk'=> array('COUNTRY','ISO2')));
$countries = new dbff;
$countries->file = $countries_file;
$countries->recdef = $countries_def;
$cities = new dbff;
$cities->file = $cities_file;
$cities->recdef = $cities_def;
$cities->rectype = 1;
$cities->changelog = FALSE;
//$cities->trace = TRUE;
$i = 0;
if ( !file_exists($file) ) {
print "File $file not found";
exit;
}
// read file
$fp = fopen($file, 'r') or die("Cannot open file $file");
print 'Reading City File<br>';
while (!feof ($fp)) {
$str = trim(fgets($fp));
if (!trim($str)=='') {
$arr = explode($delimiter,$str);
$cty = ucwords(strtolower(trim($arr[0])));
$cntyrec = $countries->getrec($cty,0);
if ($cntyrec==NULL) print "Country $cty not found<br>";
else {
$rec = array ( 0, ucwords(strtolower($arr[1])), $cntyrec[1] ); // dummy id value
if(!$cities->insert ($rec)) print '<br>'.$dbfferr;
}
};
};
fclose($fp) or die("Cannot close file $file");
// Done
print '<br>'.count($cities->recs). ' Inserted<br>';
$cities->commit();
//if ($cities->errstk) print_r ($cities->errstk);
print '</BODY></HTML>';
?>
<?php
/* Name: list_countries.php dbff sample
Author: Jerry Mattsson
Created/Updated july-05/oct-06
*/
require_once 'dbff.php';
print '<HTML><HEAD><BODY BGCOLOR="aqua">';
$countries_file = 'countries';
$countries_def = array ( 'TABLE_NAME'=>'COUNTRY',
'name' => array ('size'=>50, 'chkNN'=>true),
'iso2' => array ('size'=>2, 'pk'=>1, 'UPPER'=>true),
'iso3' => array ('size'=>3, 'UPPER'=>true));
$countries = new dbff;
$countries->file = $countries_file;
$countries->recdef = $countries_def;
//$countries->trace = TRUE;
// read and list
$countries->select();
while ($c=$countries->selectget()) {
print 'Iso2='.$c['COUNTRY.ISO2'].' Iso3='.$c['COUNTRY.ISO3'].' '.$c['COUNTRY.NAME'].'<br>';
}
print '<br>'.count($countries->recs). ' Listed<br>';
print_r($countries->errstk);
print '</BODY></HTML>';
exit;
?>
<?php
/* Name: search_countries.php, dbff sample
Author: Jerry Mattsson
Created oct-06
*/
require_once 'dbff.php';
$country_name = $city_name = NULL;
if (isset($_POST['scountry']) && isset($_POST['country']) && !empty($_POST['country']))
$country_name = trim($_POST['country']);
$countries_def = array ( 'TABLE_NAME'=>'COUNTRY', 'FILE_NAME'=>'countries',
'name' => array ('size'=>50, 'chkNN'=>true),
'iso2' => array ('size'=>2, 'pk'=>1, 'UPPER'=>true),
'iso3' => array ('size'=>3, 'UPPER'=>true));
$cities_def = array ( 'TABLE_NAME'=>'CITY', 'FILE_NAME'=>'cities',
'id' => array ('size'=>10, 'type'=>'INT', 'pk'=>'sequence'),
'name' => array ('size'=>35, 'chkNN'=>true, 'uk'=>true),
'country' => array ('size'=>2, 'chkNN'=>true, 'UPPER'=>true, 'fk'=> array('COUNTRY','ISO2')));
$countries = new dbff;
$countries->recdef = $countries_def;
$cities = new dbff;
$cities->recdef = $cities_def;
$c1 = $countries->select();
$c2 = $cities->select();
$c4 = $c1*$c2;
print '<HTML><HEAD><BODY BGCOLOR="aqua">';
print '<form name="ccsearch" action="'.$_self.'" method="post" >
Enter Letters or name for Country search:
<input type="TEXT" name="country" id="country" size="30" value="">
<input type="SUBMIT" name="scountry" id="scountry">
<br>
</FORM>';
Print "Reading $c1 countries and $c2 cities $c1 ($c4 possible combinations)<br>";
if (!isset($country_name) || empty($country_name)) {
print "No Search value entered";
exit;
}
$str = NULL;
if (!is_null($country_name)) { /// Search country
$c1 = $countries->select('name',$country_name,'like');
if ($c1==0) {
$str .= "No Country starting with $country_name found";
exit;
}
while ($c=$countries->selectget()) {
$str .= '<br>'.$c['COUNTRY.NAME'].' ';
$c3 = $cities->select('country',$c['COUNTRY.ISO2']);
if ($c3>0) {
$str .= "Has $c3 City/Cities=";
while ($cc=$cities->selectget()) $str .= $cc['CITY.NAME'].' ';
} else $str .= ' Has no cities stored';
}
}
print $str.'<br>';
print_r($countries->errstk);
print_r($cities->errstk);
print '</BODY></HTML>';
exit;
?>
<?php
/* Name: search_cities.php dbff sample
Author: Jerry Mattsson
Created oct-06
*/
require_once 'dbff.php';
if (isset($_POST['scity']) && isset($_POST['city']) && !empty($_POST['city']))
$city_name = trim($_POST['city']);
$countries_def = array ( 'TABLE_NAME'=>'COUNTRY', 'FILE_NAME'=>'countries',
'name' => array ('size'=>50, 'chkNN'=>true),
'iso2' => array ('size'=>2, 'pk'=>1, 'UPPER'=>true),
'iso3' => array ('size'=>3, 'UPPER'=>true));
$cities_def = array ( 'TABLE_NAME'=>'CITY', 'FILE_NAME'=>'cities',
'id' => array ('size'=>10, 'type'=>'INT', 'pk'=>'sequence'),
'name' => array ('size'=>35, 'chkNN'=>true, 'uk'=>true),
'country' => array ('size'=>2, 'chkNN'=>true, 'UPPER'=>true, 'fk'=> array('COUNTRY','ISO2')));
$countries = new dbff;
$countries->recdef = $countries_def;
$cities = new dbff;
$cities->recdef = $cities_def;
$c1 = $countries->select();
$c2 = $cities->select();
$c4 = $c1*$c2;
print '<HTML><HEAD><BODY BGCOLOR="aqua">';
print '<form name="ccsearch" action="'.$_self.'" method="post" >
Enter Letters or name for City search:
<input type="TEXT" name="city" id="city" size="30" value="">
<input type="SUBMIT" name="scity" id="scity">
<br>
</FORM>';
Print "Reading $c1 countries and $c2 cities $c1 ($c4 possible combinations)<br>";
if (!isset($city_name) || empty($city_name)) {
print "No Search value entered";
exit;
}
$str = NULL;
/// Search city
$c3 = $cities->select('name',$city_name,'like');
if ($c3==0) {
$str .= "No City starting with $city_name found";
} else {
while ($cc=$cities->selectget()) {
$str .= '<br>City named: '.$cc['CITY.NAME'].' ';
$c1 = $countries->select('iso2',$cc['CITY.COUNTRY']);
if ($c1>0) {
$str .= "Exists in ";
while ($c=$countries->selectget()) $str .= $c['COUNTRY.NAME'].' ';
} else $str .= ' Has no corresponding country!';
}
}
print $str.'<br>';
print_r($countries->errstk);
print_r($cities->errstk);
print '</BODY></HTML>';
exit;
?>
|