将唯一的迭代器附加到脚本中的div ID

时间:2018-08-20 13:25:39

标签: php html loops iterator

我有一个名为widgets.php的脚本,该脚本基本上将内容的选项卡插入到页面上的几种模式中。从外观上看这是可行的,但是由于我的页面上有多个模式,因此这对于页面上的第一个模式仅是“功能性的”。我在想我需要在下面的脚本中添加一个循环,以便其中的任何模式都可以为div ID附加一个唯一的数字

我已经放置了一个迭代器ID $n_id,并在div ID和它们在选项卡标题中的调用上回显了它,并在脚本末尾对其进行了递增,但是现在我被困在如何精确地需要对此进行循环。

基本上,一旦选择了某个内容,它就会进入另一个div,并使用其自己的ID进行数据库插入,因此我不必担心。我只需要确保如果页面具有4个具有此功能的模态,则每个人的Tab调用都将适用于该模态。

脚本:

widgets.php

//create iterator to add ID
<?php  $n_id = 0;>

<ul class="nav nav-tabs card-header-tabs">

  <li class="nav-item">
    <a data-toggle="tab" class="nav-link active" href="#images<?php echo $n_id?>"> 
      <h3>Images</h3></a>
  </li>

  <li class="nav-item">
  <a data-toggle="tab" class="nav-link" href="#widgets<?php echo $n_id?>"><h3>Widgets</h3></a>
  </li>

</ul>

<div class="tab-content">

  <div id="images<?php echo $n_id?>" class="tab-pane fade show active">

    <?php foreach ($imageResult as $im): ?>
    <?php if($im['type'] == 'content'){?>
    <img src="<?php echo $im['url']; ?>" style="max-width:200px; max-height:200px;">
    <?php } ?>
    <?php endforeach?>

  </div>

  <div id="widgets<?php echo $n_id?>" class="tab-pane fade">

  </div>

</div>

<?php $n_id++;?>

testPage.php

<div class="modal">
<?php include 'widgets.php'?>
</div>

1 个答案:

答案 0 :(得分:3)

我认为您可以尝试以下方法:

func(...)

使用此技巧,如果您多次输入ID号,则会获得增量ID。

由于使用了代码,因此在添加脚本时总是将ID重新设置为0。

或者您可以简单地做到这一点:

//create iterator to add ID
<?php  
if( !empty($_SESSION['nb_id']) ){

     $_SESSION['nb_id']++;
}
else{
     $_SESSION['nb_id']=0;
}

 $n_id =  $_SESSION['nb_id'];

?>

<ul class="nav nav-tabs card-header-tabs">

最诚挚的问候,