at bygge din startende med folkesundhedsprogrammet: geolokalisering og google steder

, at bygge din startkapital med folkesundhedsprogrammet: geolokalisering og google steder,,,,, 232,,,,,,,, 20,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss. denne post er en del af en serie kaldet bygge din startende med folkesundhedsprogrammet. bygge din startende med folkesundhedsprogrammet: træk krav og database designbuilding din startende med folkesundhedsprogrammet: lokalisering med i18n,,, hvad du vil lave,,, det er tredje del af bygningen, startende med din php serie om tuts +.i denne serie, jeg leder dig gennem iværksættelse af en startkapital fra idé til virkelighed ved hjælp af mit møde kalender app som et eksempel fra det virkelige liv.hvert skridt på vejen, vi åbner mødet planner kode som open source - eksempler, de kan lære af.,, i denne del, vi skal bygge på nogle af de underliggende infrastruktur for begrebet steder, hvor folk kan arrangere møder.vi skal dække det grundlæggende arbejde med steder, der bygger på vores database skema, integration af html5 geolokalisering og grænseflader for google maps og google steder.idéen er at anvende disse elementer for at gøre valget af placeringen af deres møder, hurtigt og nemt.  , vi kan ikke dække alle de raske og slutte i denne episode, men vi kan dække mere af i en kommende tutor.,, i koden for møde kalender er skrevet i yii2 ramme for folkesundhedsprogrammet og udnytter bootstrap og javascript.hvis du vil lære mere om yii2, tjek lige vores række programmering med yii2   på tuts +, bare en påmindelse, jeg vil deltage i bemærkning tråde nedenfor.jeg er især interesseret i, hvis man har forskellige tilgange, eller   supplerende idéer, eller vil foreslå emner for fremtidige tutorials.ved anmodninger om møde kalender er velkommen samt.,, bygge steder funktionalitet, inden brugerne kan arrangere møder, vi har brug for dem for at kunne finde og foreslå deres yndlingssteder.i første omgang for enkelhed, og vi vil bygge plads søgning og oprettelse funktioner adskilt fra planlægningen træk.,, der er tre måder for brugerne at tilføje steder:, ved hjælp af html5 geolokalisering, kan de se deres nuværende position via internet og tilføje dette som et sted. med google steder api, de kan finde et sted i steder database med autocomplete.til sidst, da vi ved, at deres nuværende position, vi kan begrænse søgeresultater til nærliggende steder., manuel indlæsning.brugerne kan indgå en adresse og en beskrivelse af deres eget sted, som kontoret eller hjem.,, af sted, skema, her er skema for de steder, vi har udviklet i anden del, $tableoptions = ugyldig; hvis ($- > db - > drivername = = = "mysql ') ($tableoptions =' tegnsæt utf - 8 opsummerer utf8_unicode_ci motor = innodb"} $- > createtable ("{{% sted}}" ["id = > skema: type_pk" navn "= > skema: type_string." ikke "." place_type = > skema: type_smallint. ikke for misligholdelse 0 "," status "= > skema: type_smallint."ikke for misligholdelse 0, google_place_id = > skema: type_string. ikke for "//f.eks. google steder id 'created_by = > skema: type_bigint." for "," created_at = > skema: type_integer. "ikke for "," updated_at = > skema: type_integer. "ikke for "], $tableoptions); $- > addforeignkey ('fk_place_created_by", "{{% sted), created_by", "{{% bruger}}", "id", "c", "c"), bemærker, er der ikke nogen geolokalisering, der er forbundet med en plads i denne tabel.det er, fordi   mysql   innodb motor ikke støtter fysiske fortegnelser.så jeg har skabt en sekundær tabel med myisam bord til steder geolokalisering koordinater.It's the ,Place_GPS, table:,,class m141025_213611_create_place_gps_table extends Migration { public function up() { $tableOptions = null; if ($this->db->driverName === 'mysql') { $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=MyISAM'; } $this->createTable('{{%place_gps}}', [ 'id' => Schema::TYPE_PK, 'place_id' => Schema::TYPE_INTEGER.' NOT NULL', 'gps'=>'POINT NOT NULL', ], $tableOptions); $this->execute('create spatial index place_gps_gps on '.'{{%place_gps}}(gps);'); $this->addForeignKey('fk_place_gps','{{%place_gps}}' , 'place_id', '{{%place}}', 'id', 'CASCADE', 'CASCADE'); },,As I'm in rapid prototypefremstilling tilstand, kommer jeg til at udvide skema med yii er folkevandringer, og jeg kan i sidste ende gør kommende tilpasninger samt.,, at udvide skema, skaber vi en ny migration i yii:,,. /yii migrere /skabe extend_place_table, og give følgende kode:,, <?php use yii\\db\\Schema; use yii\\db\\Migration; class m150114_202542_extend_place_table extends Migration { public function up() { $tableOptions = null; if ($this->db->driverName === 'mysql') { $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB'; } $this->addColumn('{{%place}}','slug','string NOT NULL'); $this->addColumn('{{%place}}','website','string NOT NULL'); $this->addColumn('{{%place}}','full_address','string NOT NULL'); $this->addColumn('{{%place}}','vicinity','string NOT NULL'); $this->addColumn('{{%place}}','notes','text'); } public function down() { $this->dropColumn('{{%place}}','slug) $- > dropcolumn ("{{% sted),'website) $- > dropcolumn (" {{% sted),'full_address) $- > dropcolumn ("{{% sted),'vicinity) $- > dropcolumn (" {{% sted),'notes)), vil dette tilføjes kolonner for sneglen websted, full_address, nærhed og noter.kuglen er en url venlige adresse til visning af sted på side, som yii kan skabe for os selv.andre områder vil undertiden være ajourført af brugere og andre gange befolket fra google steder api -., til at styre indvandringen, træder vi følgende:,,. /yii migrere /, bør du se følgende:,, yii migration værktøj (baseret på yii v2.0.0) i alt 1 nye migration til anvendelse: m150114_202542_extend_place_table gælder ovennævnte migration?- ja



Previous:
Next Page: