Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在新页面中动态生成HTML(服务器端)_Javascript_Php_Html_Server_Mustache.php - Fatal编程技术网

Javascript 在新页面中动态生成HTML(服务器端)

Javascript 在新页面中动态生成HTML(服务器端),javascript,php,html,server,mustache.php,Javascript,Php,Html,Server,Mustache.php,出于学习目的,我正在构建一个简单的web应用程序,允许用户为自己编写介绍页面。我对服务器端动态生成的HTML以及它如何连接到客户端感到非常困惑。我目前正在使用PHP和Mustache模板在服务器端生成关于HTML的页面,效果很好 假设我输入URL:localhost/intro.html 在intro.html上有一个按钮,如果我单击它,浏览器会将我带到一个新的URL(localhost/intro.html/Adam),其中包含一个用户的介绍信息,只需说“Adam” 据我所知,这应该向服务器发

出于学习目的,我正在构建一个简单的web应用程序,允许用户为自己编写介绍页面。我对服务器端动态生成的HTML以及它如何连接到客户端感到非常困惑。我目前正在使用PHP和Mustache模板在服务器端生成关于HTML的页面,效果很好

假设我输入URL:localhost/intro.html

在intro.html上有一个按钮,如果我单击它,浏览器会将我带到一个新的URL(localhost/intro.html/Adam),其中包含一个用户的介绍信息,只需说“Adam”

据我所知,这应该向服务器发送一个请求,生成一个包含Adam信息的about HTML页面,并将该HTML页面发送回浏览器

我不明白的是它在HTML、JS(JQuery)和PHP中的样子。同样,我可以在服务器端生成HTML,但是单击localhost/intro.HTML上的按钮如何将页面更改为localhost/intro.HTML/Adam?我的PHP代码如何检测localhost/intro.html/Adam页面并为其生成html?代码是什么样子的?我是否遗漏了一些概念


任何方向,样本代码或教程将不胜感激。我能找到的只是PHP教程。谢谢大家!

好的,凭借您对数据库和查询的了解,您可以做到这一点

创建你的主页。。。我们将其命名为
index.php

1) 将此js放入您的
标记中

<script type="text/javascript">
function MM_jumpMenuGo(objId,targ,restore){ //v9.0
  var selObj = null;  with (document) { 
  if (getElementById) selObj = getElementById(objId);
  if (selObj) eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0; }
}
</script>
2) 确保绑定参数
$query->bindValue(':name',$name,PDO::PARAM_STR)

3) 然后你可以像这样回显你想显示的信息<代码>

最后,
.htaccess
文件

创建重写规则以处理此

RewriteEngine On    # Turn on the rewriting engine
RewriteCond %{REQUEST_FILENAME} !-f # if this is not a real file
RewriteCond %{REQUEST_FILENAME} !-d # if this is not a real directory
RewriteRule    ^([A-Za-z0-9_-]+)$    results.php?name=$1    [NC,L]    # Handle page requests
你完成了

快乐编码


注意:我使用的代码是
pdo_mysql
。您可以获得更多信息

您对创建数据库和数据库查询了解多少?不想表现得粗鲁。只是想了解一下你的经验水平。我可以帮助您,但我需要知道从哪里开始。@Kuya谢谢,我目前正在使用XAMMP,对数据库和数据库查询有基本的了解。我相信我会没事的。你最好花点时间在这上面w3schools@DarrenH,谢谢你的建议。在我来这里问这个问题之前,我已经去过很多学校了,但我似乎找不到我需要的东西。你能告诉我与我的问题相关的w3schools上的链接吗?可以通过分离HTML和PHP文件来实现吗?或者这是我的错误想法?否则,我理解目前正在发生的事情。您将拥有一个主页(index.php)、一个结果页(results.php)和
.htaccess
文件谢谢,这对我来说很有意义!事实上,我还有一个后续问题。假设用户输入results.php/Adam试图访问关于Adam的信息,并假设他们有权限访问。如何将其转换为results.php?name=Adam?
$name=$\u GET['name']
这就是正在发生的事情。。。您正在创建一个名为
$name
的变量,并通过调用
$\u GET['name']
为其赋值。这使得(在您的示例中)变量
$name
等于“Adam”或传递的任何其他名称。所以
$name=$\u GET['name']
是您所需要的。
$name = $_GET['name']; // this is the name of the dropdown on the main page
SELECT * FROM mytable WHERE username=:name
RewriteEngine On    # Turn on the rewriting engine
RewriteCond %{REQUEST_FILENAME} !-f # if this is not a real file
RewriteCond %{REQUEST_FILENAME} !-d # if this is not a real directory
RewriteRule    ^([A-Za-z0-9_-]+)$    results.php?name=$1    [NC,L]    # Handle page requests