Я пытаюсь получить некоторые данные из таблицы MySQL в первый раз.
Я использую ionic, PHP и AngularJS, чтобы попробовать, но мой запрос ничего не возвращает. Поскольку я делаю это впервые, я слежу за этим учебник для получения данных с BD. Хотя, когда я запускаю свой код, мой файл просто возвращает мне содержимое другого файла, кроме файла json со всем содержимым, которое я хочу.
По сути, у меня есть функция внутри контроллера приложения, и я вызываю ее (для тестирования) в виде кнопки. Эта функция делает запрос $ http через Angular в другой файл с моим запросом. Этот файл, содержащий запрос, вызывает другой, чтобы открыть соединение с базой данных, и возвращает данные через Json.
Но я только что открыл первый файл в ответ на этот процесс. Кто-нибудь может мне помочь?
app.js
// Ionic Starter App
// angular.module is a global place for creating, registering and
retrieving Angular modules
// 'starter' is the name of this angular module example (also set in a
<body> attribute in index.html)
// the 2nd parameter is an array of 'requires'
var secompApp = angular.module('starter', ['ionic', 'ngCordova'])
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
// Hide the accessory bar by default (remove this to show the accessory
bar above the keyboard
// for form inputs)
if(window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if(window.StatusBar) {
StatusBar.styleDefault();
}
});
})
secompApp.controller("SeCompController", function($scope,
$cordovaBarcodeScanner, $http){
$scope.scanBarcode = function(){
$cordovaBarcodeScanner.scan().then(function(imageData){
//imageData = barcode content
//TRANSFORMAR ALERT POR FUNÇÃO QUE ENVIA imageData(DADO LIDO) PARA O BD
alert(imageData.text);
console.log("format: " + imageData.format);
}, function(error){
console.log("Ocorreu um erro, tente novamente. Erro:" + error);
});
}
$scope.getMinicursos = function(){
$http.get("ajax/getMinicursos.php").success(function(data){
$scope.minicursos = data;
alert(data);
});
}
});
getMinicursos (). PHP
<?php
require_once '../includes/config.php'; // The mysql database connection script
if(isset($_GET['name'])){
$task = $_GET['name'];
$status = "0";
$created = time();
$query="SELECT * from course";
$result = $mysqli->query($query) or die($mysqli->error.__LINE__);
$result = $mysqli->affected_rows;
echo $json_response = json_encode($result);
}
?>
config.php
<?php
$servername = "localhost";
$username = "abc";
$password = "123";
try {
$conn = new PDO("mysql:host=$servername;dbname=test", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
?>
Моя ошибка состояла в том, что я использовал PHP в Ionic localhost, я не обращал внимания на то, что PHP не запускался на сервере с его установленным, чтобы правильно «скомпилировать» мои файлы и вернуть данные, которые я искал.
Поэтому, если вы получаете весь PHP-файл, не обработанный сервером, вы должны убедиться, что на вашем сервере установлен PHP, даже локальный / локальный.
Других решений пока нет …