我正在創建一個「拖放」訂購列表,我爲現有的代碼抓取了一些代碼,我需要修改它以適合我的需要。但是,我並不完全理解代碼的正確操作。從php變量jQuery post
基本上我有一個php變量'$ draft_id',我需要傳入我的updateList.php
。如果我只是內updateList.php
它工作正常定義$draft_id=0
,但我需要能夠在通過這個值
代碼如下:
(的index.php)
<script type="text/javascript">
$(document).ready(function(){
function slideout(){
setTimeout(function(){
$("#response").slideUp("slow", function() {});
}, 2000);}
$("#response").hide();
$(function() {
$("#list ul").sortable({ opacity: 0.8, cursor: 'move', update:function() {
var order = $(this).sortable("serialize") + '&update=update';
$.post("updateList.php", order, function(theResponse){
$("#response").html(theResponse);
$("#response").slideDown('slow');
slideout();
});
}
});
});
});
</script>
...
<?php
include("connect.php");
$draft_id='0';
$query = "SELECT id, text FROM sort WHERE draft_id =" . $draft_id . " ORDER BY listorder ASC";
$result = mysql_query($query);
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$id = stripslashes($row['id']);
$text = stripslashes($row['text']);
echo "<li id='arrayorder_" . $id . "'>" . $text;
echo "<div class='clear'></div>";
echo "</li>";
}
?>
(updateList .PHP)
<?php
include("connect.php");
$array = $_POST['arrayorder'];
if ($_POST['update'] == "update"){
$count = 1;
//------------------------------------
$draft_id=$_POST['draft_id'];
//------------------------------------
foreach ($array as $idval) {
$query = "UPDATE sort SET listorder = " . $count . " WHERE id = " . $idval . " AND draft_id=" . $draft_id;
mysql_query($query) or die('Error, insert query failed');
$count ++;
}
echo 'Draft Order Saved!';
}
?>
所以基本上是「updateList.php」我想「draft_id」從$ _POST數組拍攝,但我不知道如何正確地傳遞。任何幫助,將不勝感激。