Trong khi làm việc trong PHP, bạn sẽ bắt gặp hai phương thức được gọi là $ _POST và $ _GET. Các phương thức này được sử dụng để có được các giá trị từ người dùng thông qua một biểu mẫu. Khi sử dụng chúng, bạn có thể gặp phải một lỗi gọi là Thông báo: Chỉ mục không xác định. & NBSP;$_POST and $_GET. These methods are used for obtaining values from the user through a form. When using them, you might encounter an error called “Notice: Undefined Index”.
Lỗi này có nghĩa là trong mã của bạn, có một biến hoặc không đổi không có giá trị được gán cho nó. Nhưng bạn có thể đang cố gắng sử dụng các giá trị thu được thông qua biểu mẫu người dùng trong mã PHP của bạn.variable or constant that has no value assigned to it. But you may be trying to use the values obtained through the user form in your PHP code.
Có thể tránh lỗi bằng cách sử dụng hàm isset []. Hàm này sẽ kiểm tra xem các biến chỉ mục có được gán giá trị hay không, trước khi sử dụng chúng.isset[] function. This function will check whether the index variables are assigned a value or not, before using them.
Lỗi chỉ số không xác định
Một chỉ mục không xác định là một 'thông báo', chẳng hạn như sau:'notice' such as the following:
Thông báo: Biến không xác định, và NBSP;
Thông báo: Chỉ số không xác định và thông báo: Offset không xác định. and “Notice: Undefined offset.”
Như bạn có thể thấy ở trên là tất cả các thông báo, đây là hai cách để đối phó với các thông báo như vậy.
1] Bỏ qua các thông báo như vậy2] Giải quyết các thông báo đó.
2] Resolve such notices.
Cách bỏ qua thông báo PHP: Chỉ mục không xác định
Bạn có thể bỏ qua thông báo này bằng cách vô hiệu hóa báo cáo thông báo với Tùy chọn Error_Reporting.error_reporting.
1. Php.ini
Mở tệp php.ini trong trình soạn thảo yêu thích của bạn và tìm kiếm văn bản trên mạng error_reporting, giá trị mặc định là e_all. Bạn có thể thay đổi nó thành e_all & ~ e_notice.“error_reporting” the default value is E_ALL. You can change it to E_ALL & ~E_NOTICE.
Theo mặc định:
error_Reporting = e_all
Thay đổi nó thành:
error_Reporting = e_all & ~ e_notice
Bây giờ trình biên dịch PHP của bạn sẽ hiển thị tất cả các lỗi ngoại trừ 'thông báo'.
2. Mã PHP
Nếu bạn không có quyền truy cập để thực hiện các thay đổi trong tệp & nbsp; php.ini, trong trường hợp này, bạn cần vô hiệu hóa thông báo bằng cách thêm mã sau vào đầu trang PHP của bạn.php.ini file, In this case, you need to disable the notice by adding the following code on the top of your php page.
Bây giờ trình biên dịch PHP của bạn sẽ hiển thị tất cả các lỗi ngoại trừ 'thông báo'.
2. Mã PHP
Nếu bạn không có quyền truy cập để thực hiện các thay đổi trong tệp & nbsp; php.ini, trong trường hợp này, bạn cần vô hiệu hóa thông báo bằng cách thêm mã sau vào đầu trang PHP của bạn.
Giải pháp hoặc sửa chữa cho thông báo PHP: Chỉ mục không xác định $ _POST and $ _GET method when you use index or variables which have not set through $ _POST or $ _GET method, but you are already using their value in your PHP code.
Nguyên nhân gây ra lỗi:
Lỗi này xảy ra với $ _POST và & NBSP; $ _GET Phương thức & nbsp; Khi bạn sử dụng chỉ mục hoặc biến không được đặt thông qua phương thức $ _POST hoặc $ _GET, nhưng bạn đã sử dụng giá trị của chúng trong mã PHP của mình.
Chỉ mục không xác định trong PHP $ _GET‘ names’ & ‘age,’ but we did set only the name variable through the $_GET method, that’s why it throws the notice.
//yoursite.com/index.php?name=ram
OUTPUT:
Notice: Undefined index: age \index.php on line 5
Ví dụ sử dụng $ _get
Trong ví dụ sau, chúng tôi đã sử dụng hai biến ‘tên và tuổi, nhưng chúng tôi chỉ đặt biến tên thông qua phương thức $ _GET, đó là lý do tại sao nó ném thông báo. the isset[] function, which will check whether the index or variable is set or not, If not then don’t use it.
Dung dịch
Để giải quyết lỗi đó, bạn có thể sử dụng & nbsp; hàm isset [], sẽ kiểm tra xem chỉ mục hoặc biến có được đặt hay không, nếu không thì không nên sử dụng nó.
//yoursite.com/index.php?name=ram
OUTPUT:
ram
Age not set in GET Method
if [isset [$ _ nhận [tên lỗi chỉ mục]]]
Mã có lỗi được giải quyết bằng hàm isset []:
// example with $_POST method
$name = isset[$_POST['name']] ? $_POST['name'] : '';
$name = isset[$_POST['age']] ? $_POST['age'] : '';
// example with $_GET method
$name = isset[$_GET['name']] ? $_GET['name'] : '';
$name = isset[$_GET['age']] ? $_GET['age'] : '';
Đặt chỉ mục là trống
Chúng tôi cũng có thể đặt chỉ mục làm chỉ mục trống:
Example:
Output:
Notice: Undefined variable: age in D:\xampp\htdocs\testsite.loc\index.php on line 7
Chú ý: Biến không xác định‘name’ and ‘age’ variable, but we didn’t set the ‘age’ variable.
Solutions:
Thông báo này xảy ra khi bạn sử dụng bất kỳ biến nào trong mã PHP của bạn, không được đặt.
Trong ví dụ trên, chúng tôi đang hiển thị giá trị được lưu trữ trong biến ‘tên và‘ tuổi, nhưng chúng tôi đã đặt biến biến tuổi ’tuổi.
Để khắc phục loại lỗi này, bạn có thể xác định biến là toàn cầu và sử dụng hàm ISSET [] để kiểm tra xem bộ này có hay không.
Thông báo: bù không xác định“$colorarray.”
Example:
Output:
0Solutions:
Loại lỗi này xảy ra với các mảng khi chúng ta sử dụng khóa của một mảng, không được đặt. isset[] & empty[], and use array_key_exists[] function to check if key exist or not.
1