Rumah > Artikel > pembangunan bahagian belakang > Notis PHP: Pembolehubah tidak ditentukan: _POST penyelesaian
Semasa proses pembangunan menggunakan PHP, kami sering menghadapi mesej ralat seperti Notis PHP: Pembolehubah tidak ditentukan: _POST. Mesej ralat ini disebabkan oleh pembolehubah tidak ditentukan atau tidak ditetapkan dipanggil dalam kod kami. Artikel ini menerangkan cara menyelesaikan mesej ralat ini.
1. Fahami mesej ralat pembolehubah Tidak ditentukan
Dalam PHP, $_POST ialah pembolehubah global yang dipratentukan yang digunakan untuk menerima pembolehubah yang diluluskan oleh kaedah HTTP POST. Contohnya:
<?php if ($_POST['username'] == 'admin'){ //do something } ?>
Dalam kod di atas, kami menggunakan $_POST['username'] untuk mendapatkan nama pengguna dalam permintaan POST. Jika $_POST['username'] tidak ditakrifkan atau diberikan nilai, pembolehubah Tidak ditentukan: _POST mesej ralat akan dihasilkan.
2. Selesaikan mesej ralat pembolehubah tidak ditentukan
1 Elakkan penjanaan mesej ralat
Cara terbaik untuk mengelakkan mesej ralat pembolehubah tidak ditentukan adalah dengan mentakrifkan dan memulakan apa yang dimaksudkan. diperlukan dalam pembolehubah kod. Contohnya:
<?php $username = isset($_POST['username']) ? $_POST['username'] : ''; if ($username == 'admin'){ //do something } ?>
Dalam kod di atas, kita mula-mula menggunakan fungsi isset() untuk menentukan sama ada $_POST['username'] wujud Jika wujud, tetapkan nilainya kepada pembolehubah $username, jika tidak pembolehubah akan dimulakan kepada kosong.
2. Matikan gesaan ralat
Dalam persekitaran pengeluaran, mematikan gesaan ralat mungkin merupakan pilihan yang lebih baik Ini boleh mengelakkan kebocoran maklumat ralat kepada pengguna dan juga meningkatkan keselamatan permohonan seks. Sudah tentu, semasa proses pembangunan, mematikan gesaan ralat mungkin menyebabkan beberapa ralat tidak ditemui dan diselesaikan dalam masa, jadi anda harus memberi perhatian untuk menghidupkan gesaan ralat tepat pada masanya. Kaedah untuk mematikan gesaan ralat adalah seperti berikut:
<?php error_reporting(0); ?>
Kod di atas akan mematikan gesaan ralat PHP. Sudah tentu, anda juga boleh melaraskan tahap laporan ralat mengikut keperluan, contohnya, tetapkannya kepada:
<?php error_reporting(E_ALL ^ E_NOTICE); ?>
Kod di atas bermaksud menetapkan tahap laporan ralat kepada semua mesej ralat kecuali tahap Notis .
3. Pengendalian mesej ralat
Apabila mesej ralat pembolehubah tidak ditentukan berlaku, kita harus menganggapnya sebagai amaran dan bukannya ralat yang membawa maut. Anda boleh menggunakan kaedah berikut untuk mengendalikan mesej ralat pembolehubah tidak ditentukan:
1 Gunakan simbol @
Gunakan simbol @ untuk menyekat mesej ralat, contohnya:
<?php @$username = $_POST['username']; if ($username == 'admin'){ //do something } ?>Dalam kod di atas, gunakan simbol @ untuk menghapuskan pembolehubah tidak ditentukan: _POST mesej ralat. 2 Tentukan sama ada pembolehubah ditakrifkan Sebelum menggunakan pembolehubah tidak ditentukan, anda boleh menggunakan fungsi isset() untuk menentukan, contohnya:
<?php if (isset($_POST['username'])){ $username = $_POST['username']; } if ($username == 'admin'){ //do something } ?>Dalam kod di atas , kita mula-mula Gunakan isset() untuk menentukan sama ada $_POST['username'] wujud, dan jika wujud, tetapkan nilainya kepada pembolehubah $username. Dengan cara ini anda boleh mengelakkan mesej ralat pembolehubah tidak ditentukan. RingkasanSemasa proses pembangunan, mesej ralat pembolehubah tidak ditentukan ialah mesej amaran biasa. Kita harus memilih kaedah yang sesuai untuk dikendalikan mengikut situasi sebenar bagi mengelakkan penjanaan maklumat yang salah. Pada masa yang sama, kita juga harus memberi perhatian untuk membuat pertimbangan sebelum menggunakan pembolehubah tidak ditentukan untuk mengelakkan mesej ralat yang tidak perlu.
Atas ialah kandungan terperinci Notis PHP: Pembolehubah tidak ditentukan: _POST penyelesaian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!