点击网页上的按钮,可以生成动态链接吗?我们可以导航网页到动态生成的链接

问题描述:

我是PHP新手和JavaScript编程 我有一个字符串,可以是“abc”或“aac”或“aaa”等,基于用户给出的输入。在用户点击某个按钮后(比如提交),我想根据字符串生成一个像www.domain.com/abc或www.domain.com/aac这样的动态链接,并将用户导航到生成的链接。这可能吗? 谢谢点击网页上的按钮,可以生成动态链接吗?我们可以导航网页到动态生成的链接

+0

你有mod_rewrite的经验吗?这可以让www.domain.com/abc解释为www.domain.com/handle.php?link=abc。 – 2013-05-03 07:15:56

+3

是的,这是可能的。但是StackOverflow期望提出问题的人展示研究工作。既然不是你的情况,你不可能得到答案。 – 2013-05-03 07:18:32

+0

@EtienneMiret现在有5个答案... – 2013-05-03 08:24:12

你实际上可以定义一个函数并将它设置为你的表单动作。然后接受用户输入,它将在函数中真正使用header('location:YOUR_SITE_URL/'.$_GET['user_input']); die;将用户重定向到所需的url。

希望有所帮助。

可能,使用路由。一个真实世界的例子是你的用户名如何成为像Facebook这样的社交网站的URL的一部分。

您需要的是某种类型的数据库来存储字符串,并且它是匹配的数据(可能是一个ID或某些标识)告诉服务器收到该字符串时要载入的内容。您还需要路由代码,它会分析整个网址以搜索应该包含该字符串的某个段。这是路由在CodeIgniter,Connect和Express等框架中的工作方式。

在JS,在连接路由器的样子:

app.route('/users/:username',function(username){ 
    //okay! we got the username! 
    //now we'll look for it in the database if it's there 
}); 

对于PHP,here's an article关于URL解析。

是的,可以的,你可以传递字符串变量throw POST或GET,当用户点击提交 ,然后用字符串congrenated回显你想要的链接。假设你想用php看看这个例子

$adress = "www.domain.com/"; 

$string = $_POST["get_string"]; 

$result = $adress + $string; 



echo $result; 

在PHP:

使用梅索德在你的页面和变量存储到$ URLNAME(例如)

,并继续与

echo("<script>location.href = \"www.domain.com/" . $UrlName . "\";</script>"); 

首先在page1.html

<form method="post" action="page2.php" > 
String: <input type="text" name="string" /> 
<input type="submit" /> 
</form> 

然后在page2.php

header('location:www.domain.com/string/'.$_POST['string']); 

但是,你应该把.htaccess包含:

Redirect /string/(.+) /page3.php?string=$1 [B,QSA] 

而且page4.php

echo $_GET['string'];