JQuery AJAX Post проблема с PHP - PullRequest
1 голос
/ 18 июля 2011

У меня есть список записей, которые зацикливаются из таблицы mysql, для каждой записи я назначил функцию onclick для передачи данных для использования запроса mysql, чтобы избежать обновления страницы при каждом вызове,

<a href='javascript:void(0)' onclick='PlayMV(\"".$rows["v_type"]."\",\"".$rows["v_id"]."\");'>Play</a>

ниже - передача значений в функцию jquery:

<script type="text/javascript">
function PlayMV(data1, data2){
$.post("mtv.php", { var1: "data1", var2: "data2" },
    function(data){
    $('#result').html(data);
});
}
</script>

здесь возникает проблема, "$ ('# result'). Html (data);" мне всегда возвращали целую страницу в исходном коде, вместо того, чтобы хранить только значения, то, что я хочу, может только публиковать 'data1' и 'data2' и назначаться в переменную php и запрос mysql, как показано ниже:

$var1 = data1;
$var2 = data2;
$q = mysql_query("SELECT * FROM table WHERE mvtype='".$var1."' AND mvid='".$var2."'");

как использовать JSON для передачи этих данных в запрос MySQL для получения окончательного результата, кто-нибудь может помочь?

Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 18 июля 2011

ваш скрипт mtv.php получит их в глобальном $ _POST.

вы сможете получить параметры с помощью $ _POST ['var1'], $ _POST ['var2']

Сценарий должен быть:

<script type="text/javascript">
    function PlayMV(data1, data2){
        $.post("mtv.php", { var1: data1, var2: data2 },
            function(data){
                alert("Data Loaded: " + data);
        });
    }
</script>

У вас были кавычки вокруг значений.

EDIT

О, если вы хотите получить данные BACK от php, вы можете вернуть XML или JSON, просто предупредив (данные), чтобы увидеть, что возвращается только сейчас.

В mtv.php используйте json_encode () и выведите его, это будет возвращено как «данные», которые затем вы можете сделать что-то вроде этого:

Пример возврата JSON: {'thing': 1234}

var myObject = $.parseJSON(data);    

alert(myObject.thing);

Предупреждение будет отображать 1234.

1 голос
/ 18 июля 2011

Как вы получаете данные в php? Вы должны быть в состоянии получить это так:

$var1 = $_POST['var1'];
$var2 = $_POST['var2'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...