通过javascript将信息发送到PHP

时间:2014-02-08 07:40:01

标签: javascript php jquery

我想用PHP将1变量的信息发送到PHP。

所以,我使用了这段代码(在index.php中):

<html>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
    <script>
        $.post('http://localhost/test/index.php', {
            name: $('.class').html();
        });
        $(document).ready(function(){
           $("#my_form").on("submit", function () {
               var hvalue = $('.class').text();
               $(this).append("<input type='hidden' name='name' value=' " + hvalue + " '/>");
        });
    });
</script>
<form action="" method="post" id="my_form">
    <div class="class" name="name">
        this is my div
    </div>
    <input type="submit" value="submit" name="submit" />
</form>
<?php 
    if(isset($_POST['name'])){ $name = $_POST['name']; } 
    echo $name;

但是我看到了这个错误:

  

注意:未定义的变量:第22行的C:\ Program Files \ EasyPHP-5.4.0RC4 \ www \ test \ index.php中的名称

我该怎么办?

2 个答案:

答案 0 :(得分:1)

$name未定义。你有if语句之外的echo,把它移到大括号内。

if(isset($_POST['name'])) {
  $name = $_POST['name'];
  echo $name;
}

另外,你发布到submit.php,但这段代码是为index.php ...所以你也需要修复它。

答案 1 :(得分:0)

另外,在使用jQuery时,你没有关闭标签:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">

像这样关闭并使用此代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$.post('http://localhost/test/index.php', {
name: $('.class').html();
});
$(document).ready(function(){
   $("#my_form").on("submit", function () {
        var hvalue = $('.class').text();
        $(this).append("<input type='hidden' name='name' value=' " + hvalue + " '/>");
    });
});
</script>
<form action="submit.php" method="post" id="my_form">
<div class="class" name="name">
this is my div
</div>
<input type="submit" value="submit" name="submit" />
</form>