作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个页面,上面有两个表单(和两个提交按钮),这些表单通过 INSERT INTO 语句的 action=""将页面链接回本身。 INSERT INTO 语句之一是:
<?php
$sql="INSERT INTO panelProduct (length_mm, width_mm, aperture)
VALUES ('$_POST[p_length_mm]','$_POST[p_width_mm]','$_POST[p_aperture]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
?>
我将表单和 INSERT 语句放在同一页面的原因之一是表单允许用户将产品添加到订单中,并且可能有多个产品(所以我认为用户可以继续提交,直到他们'重做...)。另一个原因是我需要使用从上一页发送的 $_POST 值对他们输入的产品执行其他操作,并且我不知道如何将其发送到多个页面。
无论如何,我发现的问题是每次刷新页面时都会向数据库中插入一个新行,其中包含 NULL 值。这对我来说很有意义,因为 PHP 每次遇到上面的语句时都会执行它。因此,我的问题是,如果用户在表单中输入内容并“提交”,我如何才能创建某种条件,仅执行 INSERT 语句?
最佳答案
你可以使用PHP的empty()方法来检查每个变量中是否有空值。
类似于:
if(!empty($_POST['p_length_mm']) && !empty($_POST['p_width_mm']) && !empty($_POST['p_aperture']))
{
//execute your query here
}
else
{
//if there's an alternative you would like to happen if values are null, or just leave out.
}
希望能起到作用。
关于php - 如何在mysql插入语句上放置PHP 'not null'条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12250922/
我是一名优秀的程序员,十分优秀!