会话数组中的数据错误

时间:2014-02-02 13:42:50

标签: php arrays session

我的数组中有一些错误的数字

<script>
var id=0;
function getId(id2){
 id=id2;
 document.getElementById("idHid").value=id;
document.getElementById("form").submit();
 }
</script>
<?php
$n = 10;
$st = 0;
$_SESSION['cel']= 51;
$razlika = 0;
$idGet=0;
$idArray=array();
$vel = 0;
echo "<table>";
for($i=0;$i<$n;$i++){
echo "<tr>";
  for($x=0;$x<$n;$x++){
    $st++;
    $id=(($x+1)+($i*$n));

    echo "<td id=".$id." onClick='getId(".$id.")'><b>".$id."</b></td>";
   }
 echo "</tr>"; }
echo "</table>";
if(isset($_POST['id'])){
$idGet = $_POST['id'];
$idArray=$_SESSION['ar']; 
$idArray[$vel]=$idGet;
$_SESSION['vel']+=1;
 $_SESSION['ar']=$idArray;
 }else{
 $_SESSION['vel']=0;
 $_SESSION['ar'];
} 
$vel=$_SESSION['vel'];
for($i =0;$i<$vel;$i++){
  echo $idArray[$i]."-".$vel."<br>";
                 }
?>

如果我点击某些td超过7次,我就开始收到错误。我想在会话中保存所有“id”,我想节省点击次数。

1 个答案:

答案 0 :(得分:0)

我确定你想要实现的目标。 我希望这对你有帮助。

这将存储每次点击并将ID推送到数组$_SESSION['ar']

如果要计算点击次数,可以计算数组中的条目数。这相当于点击次数

if(isset($_POST['id'])){
    $id = $_POST['id'];
    array_push($_SESSION['ar'], $_POST['id']);
}
var_dump($_SESSION['ar']);
var_dump(count($_SESSION['ar']));

确保每次点击时数组的长度不断增加,并且id被重复两次