JQuery AJAX JSON пост в переменной PHP - PullRequest
0 голосов
/ 19 июля 2011

Я перебираю таблицу mysql и печатаю ссылку HTML «Play» для каждой строки.

Я стараюсь не обновлять страницу при каждом нажатии на ссылку «Воспроизвести», поэтому я помещаю JavaScript в ссылку «href»:

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

Функция playMV () отправит необходимую информацию на сервер с помощью jquery ajax post, чтобы получить необходимые значения. Сценарий php на сервере будет использовать значения, отправленные в качестве значений в запросе mysql.

// javascript:

<script type="text/javascript">
    function playMV(p1, p2) {
        $.post("?opt=music", {
            var1: p1,
            var2: p2
        }, function (data) {
            //$('#result').html(p2);
        });
    }
</script>


// PHP:
$var1 = $_POST['var1'];
$var2 = $_POST['var2'];

$q = mysql_query("SELECT * FROM table WHERE v_lang='".$var1."' AND v_id='".$var2."'");

У меня такой вопрос: я не знаю, как вызвать значения 'p1' и 'p2' и присвоить их переменной php. закомментированная строка $('#result').html(p2) выводила только значения в блоке div с id = 'result', но на самом деле не могла передать его в php. Я прочитал ответ на вопрос о материалах json, но в итоге даже не могу получить то, что хочу.

Пожалуйста, помогите, так как я довольно долго застрял в этой части.

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

// whole code

<script type="text/javascript">
    function playMV(p1, p2) {
        $.post("<?php echo curPageURL() ?>", {
            var1: p1,
            var2: p2
        }, function (data) {
            //$('#result').html(p2);
            //$('#result').html(data);
        });
    }
</script>


<?php
mysql_set_charset("utf8");

$var1 = $_POST['var1'];
$mvid = $_POST['var2'];

echo $var1.$var2;

//echo var_dump($_POST);

$count = 1;

if((strpos(curPageURL(),'mv')==false) || (strpos(curPageURL(),'type')==false)){
$type = ucwords("C");
$mvid = 1;
}

$mtv_data = array();
$mtvlist = mysql_query("SELECT * FROM ".$tb01." WHERE mtv_type='".$type."' ORDER BY     mtv_order ASC LIMIT 0, 10") or die(mysql_error());

while($rows = mysql_fetch_array($mtvlist)){
$mtv_data[] = $rows;
}

$q = mysql_query("SELECT * FROM ".$tb01." WHERE mtv_id='".$mvid."'") or die(mysql_error());
$r = mysql_fetch_array($q);
?>

<span id="result"></span>

<div align="center" class="content-layer1" style="height:600px;padding-bottom:20px;">
<div class="content-layer2">
    <div style="width:900px;text-align:left;padding:18px 18px 8px 18px;">
        <h1>MUSIC ZONE</h1>
    </div>
    <div style="width:900px;text-align:left;padding:10px;">
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="55%">
            <div id='mediaspace' align='center'>
            <img src="images/ajax-loader.gif">
            </div>
            <div><?php echo $r["mtv_title"] ?><br /><?php echo $r["mtv_artist"] ?>  </div>
            </td>
            <td width="45%" valign="top">
            <div style="border:0px #000 solid;">
            <table width='100%' border='1' cellspacing='2' cellpadding='2'>
            <?php
    foreach($mtv_data as $rows){
        echo "<tr>
                <td>".$count."</td>
            <td><div>".$rows["mtv_title"]."</div><div>".$rows["mtv_artist"]."</div></td>
            <td><a href='javascript:void(0)' onclick='playMV(\"".$rows["mtv_type"]."\",\"".$rows["mtv_id"]."\");' id='playmv'>Play</a>
            </td>
          </tr>";
        $count += 1;
    }
            ?>
            </table>
            </div>
            </td>
          </tr>
        </table>


    </div>
</div>
</div>

1 Ответ

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

использовать json_decode ()

$object = json_decode(json_string)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...