尝试将值从 Jquery 传递到 PHP 时未定义的索引名称

Undefined Index Name when trying to pass values from Jquery to PHP

提问人:Draketh 提问时间:7/9/2014 更新时间:7/9/2014 访问量:1059

问:

因此,我正在努力弄清楚如何将数据从 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);

?>

我几乎不知所措。所有文件都在同一个文件夹中,据我所知,文件名是正确的。

javascript php jquery 未定义索引

评论

0赞 Darren 7/9/2014
为什么要运行一个帖子,然后单独加载相同的脚本..?
0赞 Draketh 7/9/2014
那是我追着我的尾巴,试图追踪为什么我总是收到那个错误。
0赞 charlietfl 7/9/2014
这应该做什么?没有发送任何内容,也没有返回任何内容的处理程序。$.ajax({ url: 'script.php' });

答:

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 调用时。echoprint

<?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 这回答了你的问题吗?