292
Chapter 5
Wait a second... doesn’t placeOrder.php return
an error message along with any error status
codes? If we show that error message to the
customer, they’ll know what went wrong.
Flip back to the placeOrder.php script
on page 284, and look at those lines at the
top that check and make sure the customer’s
address and pizza order were received. If
there’s a problem, the script returns a status
code of “400” along with an error message, and
stops processing the customer’s order.
But, our JavaScript callback,
showConrmation(), doesn’t check for an
error message from the script; it just shows the
request object’s HTTP status code if it’s not
200. That’s not very helpful...
Error messages are a good thing
Send OrderHTML Form PHP Script Callback
if (strlen($order) <= 0) {
header(“Status: No order was received.”, true, 400);
exit;
}
if (strlen($address) <= 0) {
header(“Status: No address was received.”, true, 400);
exit;
}
The PHP code creates a new response header:
“Status” becomes the name
of the response header
sent back to the browser.
Everything after “Status:“
becomes part of the message
returned as the value of the
response header.
This sends a status code of
“400”, and “true” means to
replace any existing response
headers with the same type;
in this case, that’s “Status”.
response headers