Home.html
========================================
<ion-content padding class="page1">
<ion-list>
<ion-item *ngFor="let promo of promos">
<p>{{promo.id}}{{promo.title}}</p>
</ion-item>
</ion-list>
</ion-content>
Home.ts
==========================================
import {Page} from 'ionic-angular';
import {PromoService} from './promo-service';
@Page({
templateUrl: 'build/pages/home/home.html',
providers: [PromoService]
})
export class HomePage {
public promos: any;
constructor(public promoService : PromoService) {
this.loadPromo();
};
loadPromo(){
this.promoService.load()
.then(data => {
this.promos = data;
console.log("ABCD" + data);
});
}
}
promo-service.ts
============================================
import {Injectable} from '@angular/core';
import {Http} from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class PromoService {
data: any = null;
constructor(public http: Http) {}
load() {
if (this.data) {
// already loaded data
return Promise.resolve(this.data);
}
// don't have the data yet
return new Promise(resolve => {
this.http.get('http://localhost/api.php')
.map(res => res.json())
.subscribe(data => {this.data = data; resolve(this.data);});
});
}
}
app.ts
=============================================
import {Component} from '@angular/core';
import {Platform, ionicBootstrap} from 'ionic-angular';
import {StatusBar} from 'ionic-native';
import {HomePage} from './pages/home/home';
@Component({
template: '<ion-nav [root]="rootPage"></ion-nav>'
})
export class MyApp {
rootPage: any = HomePage;
constructor(platform: Platform) {
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
StatusBar.styleDefault();
});
}
}
ionicBootstrap(MyApp);
api.php
==========
<?php
header('Access-Control-Allow-Origin: *');
$db_name = 'myevents';
$hostname = 'localhost';
$username = 'root';
$password = '';
$dbh = new PDO("mysql:host=$hostname;dbname=$db_name", $username, $password);
$sql = 'SELECT * FROM events';
$stmt = $dbh->prepare($sql);
// execute the query
$stmt->execute();
$result = $stmt->fetchAll( PDO::FETCH_ASSOC );
$json = json_encode( $result );
echo $json;
?>
========================================
<ion-content padding class="page1">
<ion-list>
<ion-item *ngFor="let promo of promos">
<p>{{promo.id}}{{promo.title}}</p>
</ion-item>
</ion-list>
</ion-content>
Home.ts
==========================================
import {Page} from 'ionic-angular';
import {PromoService} from './promo-service';
@Page({
templateUrl: 'build/pages/home/home.html',
providers: [PromoService]
})
export class HomePage {
public promos: any;
constructor(public promoService : PromoService) {
this.loadPromo();
};
loadPromo(){
this.promoService.load()
.then(data => {
this.promos = data;
console.log("ABCD" + data);
});
}
}
promo-service.ts
============================================
import {Injectable} from '@angular/core';
import {Http} from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class PromoService {
data: any = null;
constructor(public http: Http) {}
load() {
if (this.data) {
// already loaded data
return Promise.resolve(this.data);
}
// don't have the data yet
return new Promise(resolve => {
this.http.get('http://localhost/api.php')
.map(res => res.json())
.subscribe(data => {this.data = data; resolve(this.data);});
});
}
}
app.ts
=============================================
import {Component} from '@angular/core';
import {Platform, ionicBootstrap} from 'ionic-angular';
import {StatusBar} from 'ionic-native';
import {HomePage} from './pages/home/home';
@Component({
template: '<ion-nav [root]="rootPage"></ion-nav>'
})
export class MyApp {
rootPage: any = HomePage;
constructor(platform: Platform) {
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
StatusBar.styleDefault();
});
}
}
ionicBootstrap(MyApp);
api.php
==========
<?php
header('Access-Control-Allow-Origin: *');
$db_name = 'myevents';
$hostname = 'localhost';
$username = 'root';
$password = '';
$dbh = new PDO("mysql:host=$hostname;dbname=$db_name", $username, $password);
$sql = 'SELECT * FROM events';
$stmt = $dbh->prepare($sql);
// execute the query
$stmt->execute();
$result = $stmt->fetchAll( PDO::FETCH_ASSOC );
$json = json_encode( $result );
echo $json;
?>