Я пытаюсь подключить контактную форму, встроенную в Angular 7, с внутренним php для отправки формы. Когда я консоль данных формы в моем файле contact.component.ts, это показывает, хорошо. Вот что я использую, чтобы попытаться отправить это в мой Php файл:
onSubmit(form) {
this.apiService.sendEmail(form)
.subscribe((Contact: Contact[])=>{
this.contact = Contact;
});
}
}
Мой api.service.ts:
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Contact } from './contact';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class ApiService {
PHP_API_SERVER = "http://127.0.0.1:8080";
contact: Contact[]
sendEmail(form): Observable<Contact[]>{
return this.httpClient.post<Contact[]>(`${this.PHP_API_SERVER}/contact/contactMail.php`, this.contact);
}
constructor(private httpClient: HttpClient) { }
}
и, наконец, мой contactMail. * Файл 1015 *, который находится в папке контактов в src / app:
header("Access-Control-Allow-Origin: *");
header("Access-Control-Request-Headers: GET,POST,OPTIONS,DELETE,PUT");
header('Access-Control-Allow-Headers: Accept,Accept-Language,Content-Language,Content-Type');
// Get the posted data.
$postdata = file_get_contents("php://input");
if(isset($postdata) && !empty($postdata))
{
// Extract the data.
$request = json_decode($postdata);
}
$name = htmlspecialchars($request->name);
$email=htmlspecialchars($request->email);
$phone=htmlspecialchars($request->phone);
$project=htmlspecialchars($request->project);
$notes=htmlspecialchars($request->notes);
$emailTo = "jg@gmail.com";
$to = $emailTo;
$subject = "Correspondence from the Website";
$headers = "From: " .$name. "\r\n";
$body = "Name: ".$name."\n Email: ".$email."\n
Would like info on: " .$project." \nComments: " .$notes." \n";
$body = wordwrap($body,70);
mail($to, $subject, $body, $headers);
$result = array('message'=>"Thank You " .$name." Your request has been sent.");
echo json_encode($result);
, когда я запускаю это локально, я получаю сообщение об ошибке: POST http://127.0.0.1:8080/contact/contactMail.php net::ERR_CONNECTION_REFUSED
Я пытался выяснить это самостоятельно и прочитал несколько уроков, но я все еще в тупике. Любая помощь будет принята с благодарностью.