查询和javascript变量的问题
Issue with query and javascript variable
我知道这需要使用AJAX,但我不知道从哪里开始。
<td class="dataTableContent" valign="top">
<div>
<input id="<?php echo " update_products[ " . $orders_products_id . "] [backorder_date] "; ?>" name="<?php echo " update_products[ " .
$orders_products_id . "][backorder_date] "; ?>" size="10" ?>onChange="backorderDate('
<?php echo $orders_products_id; ?>')" value='
<?php echo tep_date_short($order->products[$i]['backorder_date']); ?>'>
</div>
</td>
所以我这里有一个输入框,如果他们的产品有延期订单,则需要用户输入延期订单日期。现在,如果你注意到我有一个事件,它激活了这个输入框的onChange函数。
function backorderDate(pid)
{
<?php
$prod_id = "<script language='JavaScript'>pid;</script>";
echo $prod_id;
$query_send = tep_db_query("SELECT backorder_date from pos_products WHERE
orders_products_id= '$prod_id' ORDER BY backorder_date DESC");
$final = tep_db_fetch_array($query_send);
?>
alert("There has been a change to the Back Order Date and this may
change the In Stock checkbox.");
alert("<?php echo $final; ?>");
}
然后,正如你在上面看到的,这是正在被调用的函数。我将变量从输入框传递给函数,并将其命名为"pid"。那么问题就来了。我需要该变量的内容,以便在查询中调用正确的信息。显然,我有什么是错误的,它很可能需要AJAX。有人能给我指路吗?
我不是PHP奇才,但我猜JS函数中的PHP会被解析,并且在函数实际运行时不存在。因此,不需要添加script
标签。
function backorderDate(pid) {
<?php echo $prod_id ?> = pid;
你不能从javascript这样做SQL。这不仅是不可能的,而且是巨大的安全风险。假设PHP正确输出输入,将javascript函数修改如下:
function backorderDate(pid)
{
$.ajax ({
url: "backend.php",
data: pid,
success: function(data) {
///do whataever you want here
}
})
}
然后创建一个名为backend.php的PHP文件,在其中执行查询,处理结果,并将数据发送回jQuery函数。
编辑:再看一遍,我不知道你在这里想做什么:
<input id="<?php echo " update_products[ " . $orders_products_id . "] [backorder_date] "; ?>" name="<?php echo " update_products[ " .
$orders_products_id . "][backorder_date] "; ?>" size="10" ?>onChange="backorderDate('
<?php echo $orders_products_id; ?>')" value='
<?php echo tep_date_short($order->products[$i]['backorder_date']); ?>'>
你的意思可能是这样的?:
<input id="<?php echo $update_products[orders_products_id][backorder_date]; ?>"
name="<?php echo $update_products[orders_products_id][backorder_date]; ?>"
size="10"
onChange="backorderDate('<?php echo $orders_products_id; ?>')"
value='<?php echo tep_date_short($order->products[$i]['backorder_date']); ?>'>
如果没有看到更多的代码,我真的无法破译所有这些变量是从哪里来的
相关文章:
- 将PHP变量传递给jQuery时遇到问题
- 参数变量出现ngTable指令问题
- 为变量分配多个nodejs导出返回值时出现问题
- 如何处理流星变量&对miniMongo有问题
- Jquery变量类型问题
- 带有.css()串联问题的jQuery变量
- JavaScript变量引用数组时出现问题
- 将一个php变量从js传递到php,并返回内容问题
- 简单的变量问题
- 可以't在quizz页面范围问题上用最终分数更新变量
- array_push平面数组问题-需要能够向数组中添加多个变量
- 尝试将变量传递到对象中时的作用域问题'的方法构造函数
- Javascript函数变量传递语法问题
- 访问带有变量的Object元素时出现问题
- 将 Ajax 数据分配给全局变量时出现问题
- JavaScript/jQuery中的基本数学问题-变量记忆值
- 简单的jQuery变量问题-变量冲突
- Javascript作用域问题:变量未被识别
- Javascript作用域问题-变量未定义
- 目标转换问题-变量修改