【发布时间】:2015-08-11 20:16:49
【问题描述】:
我正在根据 Jquery 中的用户输入创建动态文本框。现在我想在 Php 或 JavaScript 中验证这些动态文本框,这样空值就不会输入到我的数据库中。我尝试了很多,但如果我将文本框留空 Empty 值输入 database。我不知道问题出在哪里。
下面是我的代码..
(JavaScript)
var p_number = $("#p_number").val();
var quantity = $("#quantity").val();
if(p_number!="" && quantity!=""){
var x = 0;
$("#btn").hide();
$("#p_number").hide();
$("#quantity").hide();
//alert("hello");
for(var i=0;i<quantity;i++){
$("#contact-form").append('<div class="control-group"><input type="text" class="form-control" name="mytext[]" style="float:left; margin-top:25px; width: 40%;height: 40px; margin-left: 260px;"/></div>');
x++;
if(x==6) break;
}
$("#contact-form").append('<input type="submit" class="btn btn-theme" name="p_submit" id="btn_package" value="Add Package" style="float:left; margin-left:-260px; margin-top:80px;"/>');
return false;
}
(PHP)
if(isset($_POST['mytext'])){
//$hall_id = $_SESSION['hall_id'];
$hall_id = 7;
$package_id = $_POST['p_number'];
if($_POST['mytext'] == ''){
$error = "Error";
}
else{
$i=0;
foreach($_POST["mytext"] as $key => $text_field){
$capture_field_vals[$i] = $text_field;
$i++;
//echo $text_field;
$food_items = $capture_field_vals[$itr];
$query = mysql_query("INSERT INTO shaadi_hall_package (id, hall_id, package_id, food_item) VALUES ('', '$hall_id', '$package_id', '$food_items')") or die (mysql_error());
$itr++;
}
}
if($query){
$message = "<span class='success'>Information Added Successfully!! </span>";
}
else{
$error = "<span class='error'>OOPS!! An Error occured. Try Again</span>";
}
}
请帮帮我。提前致谢。
【问题讨论】:
-
if(!empty($text_field) { $capture_field_vals[$i] = $text_field; $i++;} -
@Arjun。感谢您的回复但我不想使用 Jquery Validator。正如您在我的 PHP 代码中看到的那样,我已经在 if 语句中检查了空输入。但它不起作用..
-
您的php验证没有意义,
mytext是一个数组,您需要循环数组值并检查它们是否为空/有数据。如果 mytext 是字符串,则使用if($_POST['mytext'] == ''){。 -
在插入表格之前,您可以检查 PHP 中的空值。比如 if(trim($food_items)!=''){ //你的插入语句在这里 }
标签: javascript php jquery html