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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 j'ai essayé encore
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part var_dump ($_POST)
mes fichier Angular sont:
1. clients.service.ts
et dans app.component.ts:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 avec le console je vérifie bien que mes données sont envoyées au service clients.service.ts :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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(); }
avec var_dump($_POST) dans mon fichier postClients.php je n'ai pas d’erreur mais j'ai rien
avec
j'ai une erreur 500 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $data = json_decode(file_get_contents('php://input')); echo $data;
Merci à vous si vous pouvez me dire comment je peux régler ce problème
Gr
Partager