我正在制作产品注册表。我试图在运行查询之前对空白表单或相同的产品代码进行检查。问题是,当我运行页面时。即使我填写inputNamaProduk
的表格并留下其他空白,我也会得到空白inputNamaProduk
的$message
if(strlen($_POST['inputNamaProduk'])>=0)
{
$form = true;
$message = '<p>Sila Isi Nama Produk.</p>';
}
else
{
if(strlen($_POST['inputSpesifikasi'])>=0)
{
$form = true;
$message = '<p>Sila Isi Spesifikasi Produk.</p>';
}
else
{
if ($dn==0)
$query = mysql_query("INSERT INTO `produk2`
(product_code,product_name,product_desc,product_type,price,product_img,product_img_name)
VALUES ('$kod','$namaproduk','$spesifikasi','$jenis','$harga','$image','$name')");
else
{
$form = true;
$message = '<p>Sila Pilih Kod Produk Lain.</p>';
}
}
}
为什么你有一个>= 0这基本上意味着如果strlen($_POST['inputNamaProduk'])> 0(如果你在这个字段中输入一些东西,那么它会显示你的消息)Sila Isi NamaProduk
试试这个
if(strlen($_POST['inputNamaProduk']) < 1)
{
$form = true;
$message = '<p>Sila Isi Nama Produk.</p>';
}
else
{
if(strlen($_POST['inputSpesifikasi'])>=0)
{
$form = true;
$message = '<p>Sila Isi Spesifikasi Produk.</p>';
}
else
{
if ($dn==0)
$query = mysql_query("INSERT INTO `produk2`
(product_code,product_name,product_desc,product_type,price,product_img,product_img_name)
VALUES ('$kod','$namaproduk','$spesifikasi','$jenis','$harga','$image','$name')");
else
{
$form = true;
$message = '<p>Sila Pilih Kod Produk Lain.</p>';
}
}
}
你的strlen($_POST['inputNamaProduk']) >= 0
总是正确的。
因为这意味着>
大于和<
小于。
应该像下面这样,
if (strlen($_POST['inputNamaProduk']) < 1) {
$form = true;
}
您也可以使用empty
来检查输入字段是否为空。
if (empty($_POST['inputNamaProduk'])) {
$form = true;
$message = '<p>Sila Isi Nama Produk.</p>';
}
else {
if (empty($_POST['inputSpesifikasi'])) {
$form = true;
$message = '<p>Sila Isi Spesifikasi Produk.</p>';
}
else {
if ($dn == 0) $query = mysql_query("INSERT INTO `produk2`
VALUES ('$kod','$namaproduk','$spesifikasi','$jenis','$harga','$image','$name')");
else {
$form = true;
$message = '<p>Sila Pilih Kod Produk Lain.</p>';
}
}
}