再びお騒がせして申し訳ありません、私はjavascriptに別の問題があります
これは、mysql データベース テーブルからのタイム カウンターのコードです。
<script type='text/javascript'>
function cronometru(timp_ramas) {
Ore = Math.floor(timp_ramas / 3600);
minute = Math.floor((timp_ramas - Ore * 3600) / 60);
secunde = timp_ramas - minute * 60 - Ore * 3600;
if (Ore < 10){ Ore = "0"+ Ore; }
if (minute < 10){ minute = "0" + minute; }
if (secunde < 10){ secunde = "0" + secunde; }
if (timp_ramas > 0) {
timp_ramas--;
document.getElementById("timp").innerHTML = Ore + ':' + minute + ':' + secunde;
//document.getElementById("cumpara").innerHTML ="<br><a href='piata.php?cumpara=<?php echo $id_functie; ?>'>Cumpara</a>";
setTimeout("cronometru("+timp_ramas+")", 1000);
} else {
document.getElementById("timp").innerHTML = "[Licitatia s-a terminat]";
// document.getElementById("cumpara").innerHTML = "[Nu mai poti cumpara]";
}
}
</script>
次にphpで、このスクリプトをwhile関数で呼び出してテーブル形式にします
while($informatie = mysql_fetch_array($sql))
{
$timp_ramas = $informatie['data_limita'] - time();
//........................................
echo " <td width='40%' align='justify'>
Pret : ".$informatie['obiect_pret']."
<br />
Timp ramas : <span id='timp'> ";
echo " <script type='text/javascript'> cronometru(".$timp_ramas.") </script></span> ";
if ($informatie['obiect_cantitate'] > 1)
echo "<br>Cantitate disponibila: ".$informatie['obiect_cantitate']." ";
if ($informatie['data_limita'] > 1)
echo "<br><a href='piata.php?cumpara=".$informatie['id']."'>Cumpara</a>";
echo "</td>";
}
データベースからの情報が異なる3つの行がある場合、最初にjavascriptにのみアクセスする理由がわかりません。他の行は完璧に機能し、データベースからすべての情報を取得しますが、これは各行のタイマー(カウントダウン)を表示したくありません。なんで?