2017-08-24 98 views
-2

這是我寫的第一個php程序。我的Ajax請求看起來沒問題,我的狀態爲200,但沒有得到任何迴應。爲什麼這個簡單的PHP沒有返回響應?

<?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程序,所以我肯定這是愚蠢的。因爲該行的 enter image description here enter image description here

+4

這就像你的接縫不會在您的文章發送一個「提交」值,$ _ POST [「提交」]是不是isset – MacBooc

+0

謝謝你會建議?將它添加到ajax或將該條件更改爲其他內容? – Zachscs

+0

對我來說並不是真的最好練習你的問題,兩者都應該工作 – MacBooc

回答

1

您的代碼遊:

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)) 
+0

,我已經對我的回答進行了編輯 – IsThisJavascript

+0

感謝您爲仇恨問題提供了一個很好的答案(haters!)。 – Zachscs

+0

大聲笑看着我的代碼現在我一定是喝醉了,當我寫這個! – Zachscs