我有一些<td name="puja">
元素,我想每隔5秒更新一次id
,因此它们包含的最高出价( puja )为拍卖( subasta )。为此,我正在尝试使用AJAX和PHP。
HTML看起来像这样(相关代码):
<?php
foreach ($subastas as $subasta) { ?>
<td name="puja" id="<?php echo $subasta["oid_s"] ?>"> </td>
由于我有多个要更新的元素,因此我尝试获取所有元素,然后为每个元素运行AJAX函数。
AJAX:
$(document).ready(function()
{
var ids = document.getElementsByName("puja");
for (var i=0; i<ids.length;i++){
var id = ids[i].id;
$.ajax({
url : 'includes/getPuja.php',
data:{"oid_s":id},
success: function(data){
$(`#${id}`).html(data);
}
});
};
});
最后,在我的php文件中,我只是建立一个数据库连接,获取所需的值,然后echo
。
getPuja.php(相关代码):
$puja = 0;
if(isset($_POST["oid_s"])) {
$oid_s = $_POST["oid_s"];
$consultaPuja='SELECT pujado from (SELECT * from pujas WHERE OID_S = :oid_s ORDER BY pujado DESC) where rownum = 1';
try {
$stmtPuja = $conexion->prepare($consultaPuja);
$stmtPuja -> bindParam(':oid_s', $oid_s);
$stmtPuja -> execute();
foreach ($stmtPuja as $fila) {
$puja = $fila["PUJADO"] ;
}
echo $puja;
} catch(PDOException $e) {
$_SESSION["excepcion"] = $e -> GetMessage();
header("Location: excepcion.php");
}
}
当我运行它时,不会修改HTML。
答案 0 :(得分:0)
我用以下代码解决了我的问题,现在值每秒更新一次:
iter._new