jee*_*ers 0 php mysql ajax foreach jquery
我在这里通过Ajax POST传递了一个数组:
Array (
[name_dependents] =>
Array (
[0] => asd
[1] => hfg
)
[age_dependents] =>
Array (
[0] => 6
[1] => 6
)
[dob_dependents] =>
Array (
[0] => 2010-07-25
[1] => 2010-07-02
)
[dataString] => firstname=a&lastname=a&username=a&mobile_number=09176229999&password=blah&birth_month=01&birth_day=1&birth_year=1937&email=a@gmail.com&sec_question_uuid=1a78e916f8a2affa1d1de00be7e41f91&sec_answer=a&civil_status=32899cec496b4b25c43c8c4444f24403-married&gender=male&command=signup
)
Run Code Online (Sandbox Code Playgroud)
这是将它发送到php文件的ajax:
$.ajax({
type: 'POST',
url: 'functions.php',
data: {name_dependents:name_dependent_array, age_dependents:age_dependent_array, dob_dependents:dob_dependent_array, dataString:dataString},
success: function() {
$("#message").html('success');
window.setTimeout(function() {
$(".alert").fadeTo(1500, 0).slideUp(500, function(){
$(this).remove();
});
}, 5000);
}
});
Run Code Online (Sandbox Code Playgroud)
我的问题是,我似乎无法使循环工作将它们插入数据库:
$i = 0;
foreach($_POST['name_dependents]'] as $name_dependent){
echo $name_dependent = $name_dependent."<br />";
echo $age_dependent = $_POST['age_dependent'][$i]."<br />";
echo $dob_dependent = $_POST['dob_dependent'][$i]."<br />--";
//$AddQuery ="INSERT INTO db (name,training,amount)VALUES ($name,$training,$amount)";
//mysql_query($AddQuery, $con);
$i++;
}
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?
解决了:
谢谢你们敏锐的目光.我现在能够回应正确的数据:
$i = 0;
foreach($_POST['name_dependents'] as $name_dependent){
echo $name_dependent = $name_dependent."<br />";
echo $age_dependent = $_POST['age_dependents'][$i]."<br />";
echo $dob_dependent = $_POST['dob_dependents'][$i]."<br />--";
$i++;
}
Run Code Online (Sandbox Code Playgroud)
请忽略上面评论的查询.请放心,我会遵循您关于我的代码易受SQL注入攻击的建议.下面我的工作查询的一个例子(现在从SQL注入安全吗?):
mysqli_query($conn, 'INSERT INTO pmp_user (uuid, first_name, last_name, address, email, gender, password, date_registered) VALUES ( "'.md5(uniqid()).'", "'.$firstname.'", "'.$lastname.'", "'.$address.'", "'.$email.'", "'.$gender.'", "'.$password.'", "'.$date.'" )');
Run Code Online (Sandbox Code Playgroud)
我认为这个问题就在这一行
foreach($_POST['[name_dependents]'] as $name_dependent){
Run Code Online (Sandbox Code Playgroud)
你有一个额外的[].试试这个
foreach($_POST['name_dependents'] as $name_dependent){
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
325 次 |
| 最近记录: |