链接重定向从PHP

时间:2010-07-31 04:07:12

标签: php jquery anchor

亲爱的所有

我有网站链接数据库,它在主文件中列出,当我尝试点击该链接时,它会在该数据库链接上重定向。 我的代码是:

file: test.php

 <?php
     // getting from database
     echo '<li onclick=\"window.location='.$result->website.'\">
           <a href="#">'.$result->option.'</a></li>';
 ?>

The Main.html calls that test.php
while ajax

$.post("test.php", {queryString: ""+inputString+""}, function(data){

});

怎么做? 任何想法是否有可能与服务器端脚本?我的PHP代码怎么了?

2 个答案:

答案 0 :(得分:0)

您的代码不适用于无效的网址。 www.google.com不是网址,只是域名。所以跳过愚蠢的Javascript链接,而不是使用:

 echo "<li><a href=\"$link\">$link</a></li>\n";

你的Javascript成功函数似乎有点空,所以改为使用.load(),如:

 $("ul").load("links.php", {queryString: ""+inputString+""})

答案 1 :(得分:0)

在venkat评论后编辑:

根据您的上一条评论,您遇到问题的代码如下: -

<?php
$link="www.google.com";
echo "<a href='#' onclick=window.location='$link'>Click here</a>";
?>

以上代码实际上应如下: -

<?php
$link = "http://www.google.com/";
echo '<a href="'.$link.'">Click here</a>';
?>

添加“http://”字符串的原因是变量“$ link”将用作HTTP URL,这需要提及此“http://”字符串,主要是因为浏览器使用的协议。在这种情况下,协议是HTTP 永远记住,对于任何URL,当存储在数据库/变量中时,URL字符串开头必须有一个字符串“http://”。

回到你问题中的代码,即: -

<?php
// getting from database

echo '<li onclick=\"window.location='.$result->website.'\"><a href="#">'.$result->option.'</a></li>';
?>

现在,“window.location”的位置并不完全正确。它应该是“a”元素的“href”属性,而不是将它放在“li”元素的“onclick”属性中。
所以代码应该是: -

<?php
// getting from database
echo '<li><a href="'.$result->website.'">'.$result->option.'</a></li>';
?>

希望它有所帮助。