如何检查如果输入一个值,如果它wasn't,不要将其插入到数据库?

Form1.php

<?php if(isset(".$_POST[fname].", ".$_POST[lname].", ".$_POST[mail].")) {$query = "INSERT INTO table1 (fname, lname, mail) VALUES ('".$_POST[fname]."', '".$_POST[lname]."', '".$_POST[mail]."')"; $result = mysql_query($query) or die ("Query Failed: " . mysql_error());} else{ echo "No Values To Insert"; } ?>

我想,以检查是否已设置的值,如果wasn't抛出一个错误,但不插入到数据库。

帮帮我?

--------------解决方案-------------

尝试

if ( isset ($_POST['fname']{0}) and isset( $_POST['lname']{0}) and isset( $_POST['mail']{0}) ){
// Insert into db
}
else{
echo "Please fill all the feilds";
}

这里发生的是,即使用户didnt输入任何值到FNAME费尔德,仍然是$ _ POST ['FNAME']将被设置。 所以使用isset($ _ POST ['FNAME'])将始终如果表单提交返回true。

但是,当您检查使用isset($ _ POST ['FNAME'] {0})你是确保用于至少一个系统字符输入和费尔德不为空。 你也可以使用一个is_empty但这是更好的方式。

此外,在使用这种美中不足的是“{}”将会在PHP版本6被删除,所以如果你打算升级您在未来的服务器,那么这可能会导致一个小问题。 但是,使用“[]”,而不是“{}”,将解决在PHP版本6的问题。

对不起,我读的问题和标题错误的理解。 你所拥有的代码应该适用于捕捉失败插件(虽然我建议掰反对mysql_error代替或死亡(...)`的考验。但是,如果该值已经存在于你可以做基于插入通过使用该页面用作参考数据库

分类:php 时间:2015-03-15 人气:3
本文关键词: PHP和MySQL
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.411 (s). 10 q(s)