在PHP中使用多个变量时如何更改href?

时间:2017-09-04 04:40:15

标签: javascript php

所以我在过去两天没找到我要找的东西。

要清楚我有一张桌子" track"在我的数据库中。 所以我可以从" track" "演示" field是一个音频文件" url" ..

 <?= $tracks['demo']; ?>

我有多个网址,但之后我需要更换a href

<a href="<?php echo $tracks['demo'];?>" 

以合乎逻辑的方式。

简单来说,就像我想点击加载的按钮1一样 url 1进入这个带有ID,标题字段的href。

当您按下按钮2时,您需要加载另一个网址并用url2替换网址1。

我尝试了很多方法,包括javascript,但它不会起作用。

现在的问题是当我列出4个项目时,它总是加载最新的&#34; URL&#34;我已经发布了我的源代码。 :)

当我在所有项目上回显<?php echo $tracks['demo]; ?>时,我可以看到正确的网址,因此替换网址的功能是我的问题。

*我基本上想要在我网站页脚中制作的播放器中加载许多mp3网址。它通过硬编码url字段中的url来工作,但这不应该是它应该是... *

代码:

<?php while($tracks = mysqli_fetch_assoc($muziek)) : ?>

   <div class="col-md-2 viny" id="muziek">
        <h4><?= $tracks['title']; ?></h4>
        <img src="<?= $tracks['img']; ?>" 
         alt=" <?= $tracks['title']; ?> />
        <p class="artist">Artist: <?= $tracks['artist']; ?></p>
    </div>
    <?= $tracks['demo'] = $audiourl ; ?>
    <button type="button" onclick="play">Play</button>

</div>
  <?php endwhile; ?>

*这个完美的所有项目轨道完美上市*

在我的播放器中我有

<a href="<?php echo $audiourl;?>" ><?= $tracks['artist']; ?></b> - <?= $tracks['title']; ?></a> 

function play(){

我不擅长JS ......这是我的问题,因为它现在加载来自php循环的最新输出...     }

2 个答案:

答案 0 :(得分:1)

我不知道你是如何替换它的,但是

为什么不在函数中传递音频。像这样

 <button type="button" onclick="play(<?= $tracks['demo'] = $audiourl ; ?>)">Play</button>

为锚标记

分配一个id
<a id="someId" href="<?php echo $audiourl;?>" ><?= $tracks['artist']; ?></b> - <?= $tracks['title']; ?></a> 

并且在播放功能中,您可以像这样收到它

function play(audioUrl){

}

并在播放功能中更改这样的href

如果您使用的是jquery

$('#someId').attr("href", audioUrl);

有时以上不起作用。无法记住原因,但如果不起作用,请尝试使用

$('#someId').href = audioUrl

如果您使用的是javascript

document.getElementById('abcd').href = audioUrl

答案 1 :(得分:0)

所以我尝试了很多东西,但我在播放器上遇到了很多问题,它的js文件使用相同的ID等等。

我尝试的新逻辑似乎有效:

 <form action="" method="POST">
          <input type="submit" value="Play" name="Play">
          </form>


          <?php 

             if (isset($_POST["Play"]))
             {

              echo $tracks['demo'];
          }else{
            echo '&nbsp;';
          }
          ?>

还有更多事情发生,但我试着把它简单地写下来,以显示逻辑。所有跟踪网址都是隐藏的,当网页加载时,默认情况下会在我的音频播放器的一个href中加载一个空的$ audiourl。通过单击按钮播放,我会在源中显示URL但不在站点上显示。 然后最新的$ audiourl变量更改为此值。