Post data d'un formulaire Angular 4 en PHP
Bonjour,
Je suis entrain de cr�er une petite application qui permet de r�cup�rer les donn�es depuis un serveur et apr�s les modifier ou ajouter d'autres entr�e avec les technologies (Angular4, PHP, Mysql)
1. Pour obtenir les donn�es j'ai un fichier getClients.php
Code:
1 2 3 4 5 6 7 8 9 10 11
| <?php
header('Access-Control-Allow-Origin:*');
include('connection.php');
$statement = $pdo->prepare( "select * from clients");
$statement->execute();
$results= $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($results);
echo $json;
?> |
et �a marche tr�s bien cot� Angular j'arrive � r�cup�rer mes donn�es et les afficher, mon probl�me est: je n'arrive pas � envoyer donn�es au serveur et je pense que le probl�me vient de PHP, le fichier utilis� pour la m�thode POST est postClients.php:
Code:
1 2 3 4 5 6 7 8
| <?php
header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token');
echo "Data envoyées";
$data = json_decode(file_get_contents('php://input'));
echo $data;
?> |
et j'ai essay� encore var_dump ($_POST) et �a ne marche pas.
mes fichier Angular sont:
1. clients.service.ts
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| import { Injectable } from '@angular/core';
import {Http, Headers} from '@angular/http';
import 'rxjs/Rx';
@Injectable
export class ClientsService {
constructor(private http: Http) {}
// obtenir les client du serveur
getClients() {
return this.http.get('http://localhost/testPhp/getClients.php');
}
// form submit to serveur
postClient(client: any) {
const headers = new Headers({'Content-Type': 'application/json'});
console.log('Client object values from form: ');
console.log(client);
return this.http.post('http://localhost/testPhp/postClients.php', client, {headers: headers});
}
} |
et dans app.component.ts:
Code:
1 2 3 4 5 6 7 8 9 10
| onSubmit(form: NgForm) {
this.submitted = true;
this.clienteService.postClient(form.value).subscribe(
(formContents) => console.log('Form contents in app component sended ' + formContents),
(error) => console.log('Erreur de ' + error)
);
this.signupForm.reset();
} |
et avec le console je v�rifie bien que mes donn�es sont envoy�es au service clients.service.ts :
avec var_dump($_POST) dans mon fichier postClients.php je n'ai pas d'erreur mais j'ai rien cot� serveur
avec
Code:
1 2
| $data = json_decode(file_get_contents('php://input'));
echo $data; |
j'ai une erreur 500 :
Merci � vous si vous pouvez me dire comment je peux r�gler ce probl�me
Gr