PHP$\u POST未定义变量(使用JQuery AJAX)
我使用php中的JQuery Ajax提交表单,如下所示:PHP$\u POST未定义变量(使用JQuery AJAX),php,jquery,post,Php,Jquery,Post,我使用php中的JQuery Ajax提交表单,如下所示: $("#addForm").submit( function() { //var valid = jQuery("#addForm").validationEngine('validate'); var valid = true; if(valid==true) { // recuperer toutes les informations var name =
$("#addForm").submit( function() {
//var valid = jQuery("#addForm").validationEngine('validate');
var valid = true;
if(valid==true) {
// recuperer toutes les informations
var name = $("#name").val();
var type = $('select#type option:selected').val();
var region = $('select#region option:selected').val();
var level = $('select#level option:selected').val();
var nbPers = $("#number_person").val();
var tempsPre = $("#time_pre").val();
var tempsC = $("#time_c").val();
var ings = $("#ing_hide").val();
var etapes = $("#preparation").val();
$.ajax({
type: "POST",
url: "php/add.php",
data: "name="+name+"&type="+type+"®ion="+region+"&level="+level+"&nbPers="+nbPers+"&tempsPre="+tempsPre+"&tempsCui="+tempsC+"&ings="+ings+"&etapes="+etapes,
error : function(request, error) {
alert("Erreur : responseText: "+request.responseText);
},
success: function(msg){ // si l'appel a bien fonctionné
alert('ok');
}
});
return false;
} else {
alert('error');
return false;
}
});
当我使用firebug进行调试时,所有变量都是正确的
但是在php文件中,var_dump显示:未定义var_dump($_POST['name'])代码>和var_dump($_POST['ings'])的正确值代码>
注意:我不使用isset
,因为我只是测试变量是否包含第一个值
为什么我没有定义
我的HTML表单:
<div class="row field_text">
<label class="label_title">Nom :</label>
<input type="text" class="inputtext" name="name" id="name"/>
</div>
<div class="row field_select">
<label class="label_title">Type :</label>
<select class="select_styled" name="type" id="type">
<option value="1">E</option>
<option value="2">P</option>
<option value="3">D</option>
<option value="4">B</option>
</select>
</div>
<div class="row">
<label>Region</label>
<select class="select_styled" name="region" id="region">
<option value="1">Ma</option>
<option value="2">Eu</option>
<option value="3">Af</option>
<option value="4">Mo</option>
<option value="5">As</option>
</select>
</div>
<div class="row field_select">
<label class="label_title">Difficulté :</label>
<select class="select_styled" name="level" id="level">
<option value="1">F</option>
<option value="2">M</option>
<option value="3">D</option>
</select>
</div>
<div class="row field_text">
<label class="label_title">Nombre Personne :</label>
<input type="text" class="inputtext" name="number_person" id="number_person"/>
</div>
<div class="row field_text">
<label class="label_title">Temps pré :</label>
<input type="text" class="inputtext" name="time_pre" id="time_pre"/>
</div>
<div class="row field_text">
<label class="label_title">Temps cui :</label>
<input type="text" class="inputtext" name="time_cook" id="time_cook"/>
</div>
<div class="clear"></div>
<div class="ings_div">
<div class="row field_select">
<label for="ingredient" class="label_title">Ingrédient :</label>
<select id="ingredient" name="basic-combo" size="1" class="select_styled">
<?php include('php\liste-ingredients.php');?>
</select>
</div>
<div class="row field_text">
<label class="label_title">Quantité :</label>
<input id="quantite" type="text" class="inputtext" name="recette_quantite"/>
</div>
<div class="row field_select">
<label class="label_title">Unité :</label>
<select id="unite" class="select_styled" name="unite">
<?php include('php/liste-unites.php'); ?>
</select>
</div>
<div class="row rowSubmit">
<input id="btn_add_ing" type="submit" value="+">
</div>
<div class="rowIng">
<label class="label_title">Liste Ingrédients :</label>
<textarea id="recette_ingredient" class="textareaField required" name="recette_ingredient" cols="5" rows="4"></textarea>
</div>
<div class="rowIngHide">
<label class="label_title">Liste Ingrédients :</label>
<textarea id="recette_ingredient_hide" class="textareaField required" name="recette_ingredient_hide" cols="5" rows="4"></textarea>
</div>
<div class="clear"></div>
</div>
<div class="clear"></div>
<div class="preparation_div">
<div class="">
<label class="label_title">Préparation :</label>
<textarea class="textareaField required" name="preparation" id="preparation" cols="8" rows="4"></textarea>
</div>
</div>
<div class="clear"></div>
<div class="row rowSubmit">
<span class="btn btn_search"><input type="submit" value="Ajouter"></span>
</div>
</form>
笔名:
类型:
E
P
D
B
区域
文科硕士
欧盟
Af
钼
像
困难:
F
M
D
名义人员:
临时公关:
崔天鹏:
英格兰特:
数量:
单位:
名单:
名单:
准备工作:
首先尝试在php0文件中打印,如var\u dump($\u POST);并检查您是否正确获取变量(值)。您的php看起来像什么。您还可以使用serialize:data:$(this).serialize()
更容易地传递数据,其中它指的是表单元素,因为您在$('#addform').submit()中代码>。我有以下代码:`array(size=9)`name'=>string'undefined'(length=9)`type'=>string'undefined'(length=9)`region'=>string'undefined'(length=9)`level'=>string'undefined'(length=9)`nbPers'=>string'undefined'(length=9)`tempsPre'=>string'undefined'(length=9)`tempsui'=>string'undefined'(length=9)“ings'=>string'4,8,1'(length=6)“etapes'=>string'undefined'(length=9`那么您的html输入似乎不正确。您可以将它们添加到您的问题中吗?我的php文件如下所示:ini_set('display_errors',1);//enregister les errors dans un fichier de log ini_set('log_errors',1);//Nom du fichier qui enregister les logs(请注意)这套标准($error_log,,'C:wamp/www/CookTrader/php/log_error_php.txt)//Afficher les errurers et les avertissements error_reportation(E_ALL^E_NOTICE);//var_dump($POST['name');//var_dump($POST['ings]);var_dump($POST);$name=$POST['name'];$type=$POST['type'.$POST['type']。。。。。。。。