处理大型If语句PHP

处理大型If语句PHP,php,html,mysql,Php,Html,Mysql,我有一个脚本,它有两个基本的输入标记。其中一个名为“季节”,另一个名为“插曲”,当您选择一个季节(如第二季)时,将使用Java脚本将显示插曲输入标记,以将显示样式更改为块。然后对“插曲输入”标记执行相同的操作,但这次它会显示一个带有点击事件链接的按钮 我正在努力使它更容易添加链接到每个按钮。目前,我有它的设置,以便有30个'dls1e'部分在MySQL中包含下载链接 我面临的问题是,要为此做大量的if声明是一件非常痛苦的事情 代码: //Season Changer Script if($sea

我有一个脚本,它有两个基本的输入标记。其中一个名为“季节”,另一个名为“插曲”,当您选择一个季节(如第二季)时,将使用Java脚本将显示插曲输入标记,以将显示样式更改为块。然后对“插曲输入”标记执行相同的操作,但这次它会显示一个带有点击事件链接的按钮

我正在努力使它更容易添加链接到每个按钮。目前,我有它的设置,以便有30个'dls1e'部分在MySQL中包含下载链接

我面临的问题是,要为此做大量的if声明是一件非常痛苦的事情

代码:
//Season Changer Script
if($seasonscript!='') {echo $seasonscript;} else {echo '<p>An error has occured. (Error: #01 - No season script is present for this show.)</p>';}

//Episodes Script
if($episodescript!='') {echo $episodescript;} else {echo '<p>An error has occured. (Error: #02 - No episode script is present for this show.)</p>';}

//720p Download Buttons
//if($l720p!='') {echo $l720p;}

?>

<form method="POST" action="" class="pure-form" style="color: #000;">

<fieldset class="pure-group">
<h2 style="color: #fff; display:inline-block">Season</h2>
<select style="display: inline-block; width: 50%;" id="selectseason" onchange="javascript:seasonChange()">
<?php if($seasoncount!='') {echo $seasoncount;} else {echo '<option>There are no seasons ready for this TV Show.</option>';} ?>
</select>
</fieldset>

<?php
if($episodescript = 'Season1') {
echo '<fieldset style="display: none;" id="season1episodes" class="pure-group">';
echo '<h2 style="color: #fff; display:inline-block">Episode</h2>';
echo '<select style="display: inline-block; width: 50%;" id="selectseason1episode" onload="javascript:season1episodesChange()" onchange="javascript:season1episodesChange()">'.$season1episodes.'</select>';
echo '<span id="s1buttons">';

if($dls1e1 != '') {echo '<button id="season1episode1" type="button" onclick="window.open(\'http://example.com?url='.$dls1e1.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 1</button>';}

if($dls1e2 != '') {echo '<button id="season1episode2" type="button" onclick="window.open(\'http://example.com?url='.$dls1e2.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 2</button>';}

if($dls1e3 != '') {echo '<button id="season1episode3" type="button" onclick="window.open(\'http://example.com?url='.$dls1e3.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 3</button>';}

if($dls1e4 != '') {echo '<button id="season1episode4" type="button" onclick="window.open(\'http://example.com?url='.$dls1e4.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 4</button>';}

if($dls1e5 != '') {echo '<button id="season1episode5" type="button" onclick="window.open(\'http://example.com?url='.$dls1e5.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 5</button>';}

if($dls1e6 != '') {echo '<button id="season1episode6" type="button" onclick="window.open(\'http://example.com?url='.$dls1e6.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 6</button>';}

if($dls1e7 != '') {echo '<button id="season1episode7" type="button" onclick="window.open(\'http://example.com?url='.$dls1e7.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 7</button>';}

if($dls1e8 != '') {echo '<button id="season1episode8" type="button" onclick="window.open(\'http://example.com?url='.$dls1e8.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 8</button>';}

if($dls1e9 != '') {echo '<button id="season1episode9" type="button" onclick="window.open(\'http://example.com?url='.$dls1e9.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 9</button>';}

if($dls1e10 != '') {echo '<button id="season1episode10" type="button" onclick="window.open(\'http://example.com?url='.$dls1e10.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 10</button>';}

if($dls1e11 != '') {echo '<button id="season1episode11" type="button" onclick="window.open(\'http://example.com?url='.$dls1e11.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 11</button>';}

if($dls1e12 != '') {echo '<button id="season1episode12" type="button" onclick="window.open(\'http://example.com?url='.$dls1e12.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 12</button>';}

if($dls1e13 != '') {echo '<button id="season1episode13" type="button" onclick="window.open(\'http://example.com?url='.$dls1e13.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 13</button>';}

if($dls1e14 != '') {echo '<button id="season1episode14" type="button" onclick="window.open(\'http://example.com?url='.$dls1e14.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 14</button>';}

if($dls1e15 != '') {echo '<button id="season1episode15" type="button" onclick="window.open(\'http://example.com?url='.$dls1e15.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 15</button>';}

if($dls1e16 != '') {echo '<button id="season1episode16" type="button" onclick="window.open(\'http://example.com?url='.$dls1e16.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 16</button>';}

if($dls1e17 != '') {echo '<button id="season1episode17" type="button" onclick="window.open(\'http://example.com?url='.$dls1e17.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 17</button>';}

if($dls1e18 != '') {echo '<button id="season1episode18" type="button" onclick="window.open(\'http://example.com?url='.$dls1e18.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 18</button>';}

if($dls1e19 != '') {echo '<button id="season1episode19" type="button" onclick="window.open(\'http://example.com?url='.$dls1e19.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode 19</button>';}

echo '</span></fieldset>';
}
?>
</form>

现在s1ep[0]是链接1(dls1e1),s1ep[1]是链接2(dls1e2),等等,我现在需要的是一个循环,基本上完成19个if语句所做的事情。

最后我不明白你的问题是什么:-(:-)

但是要去掉19
IF
s(你为什么在帖子中写30?),你可以用常规循环替换它:

for ($i=1;$i<=19; $i++) {
    if(${'dls1e'.$i} != '') {
       echo '<button id="season1episode'.$i.'" type="button" onclick="window.open(\'http://example.com?url='.$dls1e.$i.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode '.$i.'</button>';
    }
}
($i=1;$i$value)的
{
echo“下载插曲”。($key+1)。”;
}

您可以使用一列,将一个序列化数组和所有信息放在其中,然后在其上循环。或者您也可以制作一个表来实现此目的,您只需要一个唯一的id就可以将条目连接到序列表中的一行。您所说的序列化是什么意思?我确实理解有一个数组可能工作得很好。但我会等到其他人有任何解决办法。你应该弄清楚循环是如何工作的:-)我只有19英寸,只是举个例子,说明它能有多大。xD不想把它扔进去。无论如何,这可能会工作,但我发现了一个不同的方法,但你似乎知道循环,所以请帮助我这个方法。基本上我现在发现,如果我使用explode(),我可以将它从30个dls1e变为1个(我将其重命名为S1Sections),然后我可以执行s1ep[0],这将为我提供第1集的链接,然后执行s1ep[1],这将为我提供链接2 e.t.c,但我仍然必须使用30个if,你能为此编写一个循环吗?代码:$s1ep=爆炸(“~”,$s1ep)($i=0;$i1st-我要求你编辑/更新你的帖子,而不是在这里发表评论。2nd为什么你要将你的代码更改为
explode
什么?3rd-我在你最初发布的代码中没有看到
explode
。4th我猜你已经将变量$dls1e1更改为$s1p[1],将$dls1e2更改为$s1p[2]依此类推。如果我的猜测是正确的——告诉我,我会更新我的答案一点。1-抱歉,我会在第2节更新它,因为有30个sql列来处理这个简单的问题是一件痛苦的事,使用explode允许我使用1个列,使它变得更容易。第3是的,我只是在第4节中添加了它,不完全是我删除了dls1e2-dls1e30,只将dls1e1重命名为S1SECTIONS,然后在其上使用explode,使我们的新变量s1ep不是s1p,因为它是explode如何工作的数组s1ep[0]基本上是dls1ep1,s1ep[1]是dls1ep2。明白吗?
for ($i=1;$i<=19; $i++) {
    if(${'dls1e'.$i} != '') {
       echo '<button id="season1episode'.$i.'" type="button" onclick="window.open(\'http://example.com?url='.$dls1e.$i.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode '.$i.'</button>';
    }
}
foreach ($s1ep as $key=>$value ) {
   echo '<button id="season1episode'.($key+1).'" type="button" onclick="window.open(\'http://example.com?url='.$value.'&ref='.$imdbid.'\');" class="pure-button pure-input-1-2 pure-button-primary" style="display: none;">Download Episode '.($key+1).'</button>';
}