Tôi đang cố gắng chạy một số mã từ book. Dường như có sự cố với mã.Thông báo lỗi: Lỗi nghiêm trọng: Không thể sử dụng hàm trả về> giá trị trong ngữ cảnh viết trong
Dưới đây là thông báo lỗi:
Fatal error: Can't use function return value in write context in /Applications/MAMP/htdocs/Eclipse-Workspace/simpleblog/test.php on line 24
Đây là mã tham chiếu trong thông điệp (bắt đầu trên đường dây 24)
if (!empty(trim($_POST['username']))
&& !empty(trim($_POST['email']))) {
// Store escaped $_POST values in variables
$uname = htmlentities($_POST['username']);
$email = htmlentities($_POST['email']);
$_SESSION['username'] = $uname;
echo "Thanks for registering! <br />",
"Username: $uname <br />",
"Email: $email <br />";
}
tôi sẽ đánh giá cao sự giúp đỡ nào. Vui lòng cho tôi biết nếu tôi cần cung cấp thêm bất kỳ thông tin nào
Cảm ơn rất nhiều bạn. Điều đó rất nhanh. Các giải pháp hoạt động tuyệt vời.
Vấn đề là hàm rỗng() chỉ cần được áp dụng cho các biến trực tiếp.
Để tham khảo trong tương lai: Mã này là từ 'PHP cho người mới bắt đầu tuyệt đối' bởi Jason Lengstorf (2009), các trang 90-91, Chương 3, $ _SESSION
đang sửa chữa:
//new - Created a variable that can be passed to the empty() function
$trimusername = trim($_POST['username']);
//modified - applying the empty function correctly to the new variable
if (!empty($trimusername)
&& !empty($trimusername)) {
// Store escaped $_POST values in variables
$uname = htmlentities($_POST['username']);
$email = htmlentities($_POST['email']);
$_SESSION['username'] = $uname;
echo "Thanks for registering! <br />",
"Username: $uname <br />",
"Email: $email <br />";
}
Cảm ơn rất nhiều. Những công việc này. Tôi đã cập nhật câu hỏi với mã đã sửa trong trường hợp bất kỳ ai khác đang sử dụng cuốn sách này và gặp sự cố. – ntc
Cảm ơn bạn rất nhiều vì đã hỏi và trả lời câu hỏi này với mã đã sửa. Tôi mới sử dụng PHP và lập trình, và khi tôi chạy qua một lỗi đánh máy trong cuốn sách, tôi luôn nghĩ rằng đó chỉ là tôi không nhận được nó. Thật là nhẹ nhõm khi đặt đúng thứ vào và thấy nó hoạt động! –
Tôi nghĩ rằng cần lưu ý rằng hành vi này chỉ ảnh hưởng đến các phiên bản PHP <5.5 như đã nêu tại [php.function.empty] (http://php.net/manual/en/function.empty.php) –