Это первая программа php, которую я написал. Мои запросы Ajax выглядят хорошо, и я получаю статус 200, но не получаю никакого ответа.
<?php
class Employee{
private $fn;
private $ln;
private $dpt;
private $ID;
}
function newEmployee(){
$employee = new Employee();
$fn = $_POST['firstname'];
$ln = $_POST['lastname'];
$dpt = $_POST['department'];
$id = sprintf('%08d', $GLOBALS['$ID']);
$GLOBALS['$ID'] = $GLOBALS['$ID'] + 1;
echo "First Name: $employee\nLast Name: $ln\nDepartment: $dpt\nID: $id";
$employee -> fn = $_POST['firstname'];
$employee -> ln = $_POST['lastname'];
$employee -> dpt = $_POST['department'];
$GLOBALS['$employeeArray'][]= $employee;
$GLOBALS['$numOfEmployees'] = $GLOBALS['$numOfEmployees'] + 1;
$numemployees = $GLOBALS['$numOfEmployees'];
echo "First Name: $employee\nLast Name: $ln\nDepartment: $dpt\nID: $id\nNumber of Employees: $numemployees";
}
if(isset($_POST['submit']))
{
newEmployee();
}
$employeeArray = array();
$ID = 0;
$numOfEmployees = 0;
?>
Буквально моя первая PHP-программа, поэтому я уверен, что это что-то немое.
Из-за этой строки ваш код разбивается:
echo "First Name: $employee\nLast Name: $ln\nDepartment: $dpt\nID: $id";
Что происходит, вы пытаетесь вывести свой $employee = new Employee();
как строка, когда она является объектом. Таким образом, PHP ломается здесь и не хочет продолжать просматривать остальную часть вашего кода.
Может, ты так хотел?
echo "First Name: $fn\nLast Name: $ln\nDepartment: $dpt\nID: $id";
Вы также захотите заменить другой вызов $employee
во втором эхо в нижней части функции.
Как правильно указал Macbooc, вы не отправляете $_POST['submit']
в свою форму, может быть, изменить его так?
if(isset($_POST['submit']))
->
if(isset($_POST))