Angular 4 HttpClient Query Parameter
аюсь воспроизвести приложение в Angular Material, которое у меня уже пару лет работает с HTTP / JavaScript и т. Д. Это приложение, которое можно назвать приложением типа базы данных с операциями CRUD над базой данных MySQL на удаленном сервере, использующем PHP между приложением и базой данных.
Некоторые из таблиц, которые возвращаются с сервера в JSON, ограничены диапазоном параметром, отправляемым из JavaScript, а затем полученным PHP и используемым в предложении where оператора Select, например, в следующем фрагменте кода:
$registration = $_POST['REGISTRATION'] ;
$query = "SELECT sysid, REGISTRATION, TYPE, COMPONENT, SERIAL, PART_NUMBER FROM status_hours WHERE REGISTRATION='$registration' ";
Этот код HTTP / JavaScript / PHP работает отлично, однако я бы хотел воспроизвести приложение в Angular Material.
С помощью Angular Material я могу отлично получать записи в JSON, но проблема в том, что я не могу отправить параметр и заставить его работать, чтобы его можно было использовать в предложении WHERE в PHP.
Вот код Type Script в приложении, которое получает таблицу строк с сервера.
const url = 'http://mydatabase.com/angular/php/status_hours.php' ;
const options = { params: new HttpParams().set('REGISTRATION', this.REGISTRATION) } ;
this.http.get<Hours[]> (url, options)
.subscribe(hours =>
{
console.log(hours) ;
this.dataSource.data = hours ;
} ) ;
Вот PHP-код, который я пытался получить, чтобы получить параметр, который называется REGISTRATION, чтобы его можно было использовать в операторе WHERE.
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$registration = $request->REGISTRATION;
Проблема в том, что либо параметр не отправляется приложением Angular, либо он не принимается PHP, чтобы его можно было использовать в предложении WHERE.
Я могу жестко закодировать для целей суммирования, $ registration = 'hardCodedData'; и он вернет действительные данные JSON.
Спасибо за вашу помощь.