这是什么&引用;URL中的符号在php中用于?
我是PHP新手。在学习PHP语言的过程中,我注意到,有些网站会使用这种URL: www.website.com/profile.php?user=roa3& 我的问题是:这是什么&引用;URL中的符号在php中用于?,php,url,Php,Url,我是PHP新手。在学习PHP语言的过程中,我注意到,有些网站会使用这种URL: www.website.com/profile.php?user=roa3& 我的问题是: “?”符号用于什么 如果我要开发一个php网站,我必须在我的URL中使用它吗?例如,在用户(roa3)成功登录后,我将重定向到“www.website.com/profile.php?user=roa3”,而不是“www.website.com/profile.php” 使用它的优点和缺点是什么 从服务器的角度来看,是什么?这
从服务器的角度来看,是什么?这只是另一个角色。PHP为URL的一部分提供了简单的方法?字符,例如对于“/profile.php?user=roa3”,php将设置$\u GET['user']='roa3'
原因是什么?URL中的有用之处在于浏览器可以使用表单构建动态URL——在上面的例子中,我希望URL是由一个HTTP表单构建的,该表单带有一个字段“user”,人类用户在其中键入了“roa3”。简单地说,好问题
profile.php?username=roa3
2)在URL中使用?
符号通常被认为不利于搜索引擎优化。此外,URL看起来有点难看。使用URL可以做与profile.php?user=roa3
或products.php?id=123&category=toys
相同的事情:site.com/profile/roa3
或products/玩具/123
默认情况下,使用该框架将为您提供友好的URL,并消除URL中对?
的需要。有关示例,请参阅
3)php页面的代码中也使用了?
符号。例如,if-else
块,例如:
if ($x==1)
$y=2;
else
$y=3;
也可以写成:
$y=($x==1) ? 2 : 3;
“?”表示要遵循一些GET变量。您的示例使用了一个名为“user”的变量,并分配了一个名为“roa3”的变量
使用GET变量的优点:
- 它们可以作为URL的一部分添加书签
缺点
- 它们是公开的。任何人都可以截取和查看此信息。这些url请求甚至会在旅途中被服务器缓存。因此,任何人都可以通过手动键入该信息来模拟您的roa3用户…他们还可以将roa3更改为其他用户并模拟他们
您还可以使用“&”符号分隔许多变量,例如:
www.website.com/profile.php?user=roa3&fav_color=blue
其他选择:
- 后置变量
- 您可以通过POST变量发送变量。这些变量在请求的标头中传递,而不是在请求的url中传递。这些变量不是立即可见的,并且不会在旅途中被服务器缓存,但仍然可以读取。除非您建立了HTTPS连接
- 表单中的变量可以通过POST或GET方法发送。您可以在表单的“方法”中指定它。
- 会话变量
- 会话变量存储在服务器上。会话id会传递给用户,每次用户发出另一个请求时,此会话id会传递回服务器。然后,此会话id可用于获取存储的会话变量。因此,您可以存储用户最喜欢的颜色、名称和ip地址等。但您可以将其存储在服务器上,而不是用户的家用电脑上。
会话ID可以被模拟,所以最好检查用户的IP,或者将它们包装在一个安全连接中。例如https
- 拦截请求的人无法更改会话变量
- COOKIE变量:
与会话变量类似,只是它们存储在用户的PC上,而不是服务器上。它们存储在一个域上,当它们进入该域时,它们会将请求头中的变量重新提交给服务器。这意味着用户可以更改和破解变量,或者其他人可以