提问人:Draketh 提问时间:7/9/2014 更新时间:7/9/2014 访问量:1059
尝试将值从 Jquery 传递到 PHP 时未定义的索引名称
Undefined Index Name when trying to pass values from Jquery to PHP
问:
因此,我正在努力弄清楚如何将数据从 Jquery 发布到 PHP,尽管我遵循了我在这里的线程上找到的示例,但我不断收到“未定义的索引名称”错误。
到目前为止,我对 JQuery 端的代码是
<script src="jquery-1.11.1.min.js"></script>
</script>
<script>
$(document).ready(function(){
$("#div2").text('Hey');
$("#div1").load('testFile.txt');
setInterval(function() {
$.ajax({ url: 'script.php' });
$("#div1").load('testFile.txt');}
,100);
});
function sub(){
var msg = $("#name").val();
$.post('chat.php',{'name':"1234"},function(){
$("#div2").load('chat.php');
});
};
</script>
我正在使用的html表单和按钮
<div id="div1"></div>
<div id="div2">Um</div>
<form name="myForm" id="myForm" action="" method="POST">
<input type="text" name="name" id="name" size="30" value=""/>
</form>
<button id="submission" onclick="javascript:sub();">Errrr</button>
我还要去PHP方面
<?php
echo $_POST['name'];
$myFile = "testFile.txt";
$fh = fopen ($myFile, 'a+') or die("Cannot Open File");
fwrite ($fh, $_POST['name']);
fclose($fh);
?>
我几乎不知所措。所有文件都在同一个文件夹中,据我所知,文件名是正确的。
答:
1赞
Darren
7/9/2014
#1
您的问题很可能是您正在这样做:
$.post('chat.php',{'name':"1234"},function(){
$("#div2").load('chat.php');
});
您实际上是在将数据发送到文件,然后只是加载文件?
你会得到这个错误,因为你的文件没有发送参数。{'name': '1234'}
load()
查看 jQuery.post
手册,您会看到您可以得到如下响应:
$.post('chat.php',{'name':"1234"},function(data){
console.log(data);
});
当您使用 or 之类的东西来有效地将内容“返回”到 ajax 调用时。echo
print
<?php
echo $_POST['name'];
?>
现在检查您的控制台,看看是否有响应。
评论
0赞
Draketh
7/9/2014
我在控制台中获得了返回的值,但没有收到PHP脚本正常运行的迹象。
1赞
Darren
7/9/2014
如果您获得发送的值,则脚本应该正确运行...{'name': name}
0赞
Darren
7/9/2014
@Draketh这对你来说怎么样..?
0赞
Draketh
7/9/2014
多亏了你的帮助,我才能够解决它,并为此感到有点愚蠢,我有两个冲突的脚本在运行,这是我的主要问题。非常感谢您的帮助!
0赞
Darren
7/11/2014
@Draketh 这回答了你的问题吗?
评论
$.ajax({ url: 'script.php' });