2014-10-30 49 views
0

我想创建一个名为NEXT的链接,它将1.确定当前页面,然后将它递增1.我有类似文件-1.php,sample-2.php,sample-3.php等等......所以,当我在sample-1上并点击next时,它将会转到sample-2等等。 这里是我得到的,我只是混合来自我认为有用的代码。如果我有onclick函数来决定链接的位置,我会在链接的href上输入什么

<a id="asdf" href="$filename" onclick="myfunc"> NEXT </a> 

<script> 
function myfunc(){ 
<?php 
$filename = basename($_SERVER['PHP_SELF']); 
    list ($name, $ext) = explode['.', $filename); 
    list ($basename, $index) = explode['-', $name); 
    $index++; 
    $filename = $basename.'.'.$index.$ext; 
?>} 
</script> 

它有道理吗?

+0

没有,它没有任何意义... – 2014-10-30 08:21:24

回答

1

有没有必要使用JavaScript这一点,只是PHP:

<?php 
$filename = basename($_SERVER['PHP_SELF']); 
list ($name, $ext) = explode['.', $filename); 
list ($basename, $index) = explode['-', $name); 
$index++; 
$filename = "$basename-$index.$ext"; 
echo "<a id='asdf' href='$filename'> NEXT </a>" 
+0

此代码是正确的。 @gaxelgaxel,请注意你的代码背后的逻辑是不正确的。 – DarkBee 2014-10-30 08:20:10

+1

您还需要附加短划线:$ filename = $ basename .'-'。$ index。'。'。$ ext; – 2014-10-30 08:21:17

+1

我已经修复了它如何计算新的'$ filename'。 – Barmar 2014-10-30 08:23:38

1

这是为我工作。

<?php 
$parts = explode('/', $_SERVER['REQUEST_URI']); 
$last = end($parts); 
$last1 = explode('.', $last); 
$last2 = explode('-', $last1[0]); 
$cnum = end($last2); 

//next number 
$filename = $cnum+1; 

?> 

<a id="asdf" href="$filename" onclick="myfunc"> NEXT </a> 
+0

谢谢我也会尝试这一个..我会回来 – gaxelgaxel 2014-10-30 08:59:15

相关问题