imo-tikuwa / cakephp-zipcode-jp
ZipcodeJp plugin for CakePHP
Installs: 123
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:cakephp-plugin
Requires
- php: >=8.0
- cakephp/cakephp: >=4.3
This package is auto-updated.
Last update: 2024-12-17 12:02:20 UTC
README
Installation
You can install this plugin into your CakePHP application using composer.
The recommended way to install composer packages is:
# for CakePHP4
composer require imo-tikuwa/cakephp-zipcode-jp "2.*"
# for CakePHP3
composer require imo-tikuwa/cakephp-zipcode-jp "1.*"
Load the plugin in Application.php.
class Application extends BaseApplication { public function bootstrap() { $this->addPlugin('ZipcodeJp', ['routes' => true]); } }
Initialization
Execute migration to create zipcode_jps
table.
When you execute the initialize_zipcode_jp
command, the latest postal code data of Japan Post will be acquired and stored in the database.
bin\cake.bat migrations migrate --plugin ZipcodeJp
bin\cake.bat initialize_zipcode_jp
Usage(server side)
$zipcode = '1010032'; $this->ZipcodeJps = $this->fetchTable('ZipcodeJp.ZipcodeJps'); $result = $this->ZipcodeJps->findByZipcode($zipcode);
Usage(client side)
<input type="text" id="zipcode" maxlength="7" placeholder="ここに郵便番号を入力" />
$("#zipcode").on("keyup", function(){ $("#pref").text(''); $("#city").text(''); $("#address").text(''); if ($(this).val().length == 7) { let requesturl = '/zipcode-jp/' + $(this).val() + '.json'; $.ajax({ type: 'get', url: requesturl, dataType: 'json' }).done(function(result) { if (result != null) { $("#pref").text(result['pref']); $("#city").text(result['city']); $("#address").text(result['address']); } }); } });