2012-04-05 76 views
1

我创建与MySQL + PHP循环链接href网址,但我需要添加一个JavaScript的变种到URL的href,如:创建PHP变量+ javascript变量

JavaScript的变种是一个jQuery的饼干:$.cookie('limit')

urls.php

<a href='page.php?id=1&limit=$.cookie('limit')'>1</a> 
<a href='page.php?id=2&limit=$.cookie('limit')'>2</a> 
<a href='page.php?id=3&limit=$.cookie('limit')'>3</a> 

把JavaScript的变种成一个隐藏的输入上这种情况下无法正常工作。

在我的page.php我需要在mysql查询中使用两个变量(id和limit)。所以插入这个JavaScript var在隐藏输入page.php将无法​​正常工作。

我试图从href网址删除限制var和添加此我page.php文件,但它没有工作:

if(!empty($_REQUEST['limit']){ 
    $_REQUEST['limit'] = "<script type='text/javascript'>document.write($.cookie('limit'))</script>"; 
} 
+0

我不不太明白你想要达到的目标。你能澄清吗? – 2012-04-05 22:04:25

+0

JavaScript如何与链接的HREF进行交互?它创造它们吗?它读取它们吗? – Jasper 2012-04-05 22:04:39

+0

对,会试图更好地解释。感谢纠正Josh Moore。 – Leo 2012-04-05 22:23:15

回答

0

更改链接到本:

<a href='page.php?id=1' class='changeMe'>1</a> 
<a href='page.php?id=2' class='changeMe'>2</a> 
<a href='page.php?id=3' class='changeMe'>3</a> 

添加JavaScript这样的:

$(document).ready(function(){ 
    $('a[class="changeMe"]').each(function(){ 
     var newHref = $(this).attr("href") +"&limit="+ $.cookie('limit'); 
     $(this).attr("href", newHref); 
    }); 
}); 
2

你没有把正确的变量到PHP。使用你的代码,你只需在一个字符串内写入限制。你需要的变量连接字符串是这样的:

if(!empty($_REQUEST['limit']){ 
    $limit = "<script type='text/javascript'>document.write('".$_REQUEST['limit']."')</script>"; 
} 
+0

我不明白它是如何工作的,但我认为那是一个糟糕的问题。编辑我的问题。无论如何感谢您的帮助! – Leo 2012-04-05 22:27:08

+0

那么,你在$ _REQUEST ['limit']变量中有一些字符串,并且你希望它在你的字符串中(这会将客户端作为JS执行)。在你的情况下,JS会是:... document.write($ .cookie('limit'))...,但我告诉过你如何实现变量的值到JS中(例如,如果$ _REQUEST ''limit']是'limit_value'它将是:... document.write($。cookie('limit_value'))...) – Goran 2012-04-06 20:38:35

1

如果被传递到了你在构建链接的页面限制的,那么你就可以抓住这一数字通过$ _REQUEST变量像你提到的。然后,您可以在该页面的逻辑中编写一个for循环来创建所需的链接数量。在这种循环中,您可以构建这样的事情来呼应网址到页面:

echo "<a href='page.php?id={$i}&limit=jscriptVar'>{$i}</a>" 
+0

感谢Josh Moore的纠正。我编辑了我的问题,试图更好地解释我想要做的事情。 – Leo 2012-04-05 22:28:20