- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有自己网站的构建 URL,例如 Stack Overflow URL。我的网址如下。
http://www.example.com/1255544/this-is-the-url-text
在这个URL中,1255544
是id,this-is-the-url-text
是URL的标题文本,都存储在数据库中。我注意到 Stack Overflow URL 基于 id 工作。假设这是一个 Stack Overflow URL
http://stackoverflow.com/questions/15679171/new-way-to-prevent-xss-attacks
在此 URL 中,15679171
是帖子的 ID。当我将此 ID 更改为 15706581
而不触及 new-way-to-prevent-xss-attacks
并按 Enter 键时,URL 自动更改为以下 URL:
http://stackoverflow.com/questions/15706581/simplecursoradapter-does-not-load-
external-sqlite-database-id-error
当我尝试删除 URL 标题文本的某些部分时,如下所示
http://stackoverflow.com/questions/15679171/new-way-to-preve
它会自动更正 URL,如下所示:
http://stackoverflow.com/questions/15679171/new-way-to-prevent-xss-attacks
这意味着正在根据 ID 15679171
和相关的 URL 标题文本从数据库中检索数据,new-way-to-prevent-xss-attacks
, 根据id附上。
我也想做这个。但问题是,我不会理解如果有人更改 URL 的 id,标题文本应该自动更改。我该怎么做?
我有以下想法:
$url_id = $_GET["id"];
$url_txt = $_GET["url_txt"];
$qry = "SELECT * FROM mytable WHERE url_id = '{$url_id}' LIMIT 1";
$data = mysql_query($qry);
$data_set = mysql_fetch_array($data);
if($url_txt== $data_set["url_txt"]) {
// proceed further
} else {
$rebuilt_url = "http://www.example.com/" . $url_id . "/" . $data_set["url_txt"];
header("Location: {$rebuilt_url}") // Redirect to this URL
}
执行此操作是否正确且有效?有解决办法吗?
最佳答案
您的代码看起来很不错,在我的一个 Stack Overflow 答案中我也建议了类似的方法。但是,我只建议一个小的改进。而不是:
header("Location: {$rebuilt_url}");
你应该这样做:
header ('HTTP/1.1 301 Moved Permanently');
header("Location: {$rebuilt_url}");
这将使浏览器主动缓存这些 URL,并且您的代码和 SQL 查询不会每次都执行。
同时检查:
关于php - Stack Overflow URL 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15847109/
我正在使用 bootstraptable 并试图让单元格显示溢出的内容但只显示向下(即 overflow-y)。问题是,bootstraptable css 使用 overflow: hidden o
来自文档:溢出: The overflow shorthand CSS property sets what to do when an element's content is too big to
有多个这样命名的问题,但我没有找到一个适用于我的情况,所以我在这里: 在这段代码中: #container:hover { overflow-x: hidden; } #container {
我正在学习 Haskell,但遇到了我没想到的异常“堆栈溢出”。 代码相当简单: type Reals = Double prod :: Reals -> Reals -> Reals prod a
我通读了this question并且没有看到我的问题是否有解决方案。 我创建了一个 CodePen这表明了这个问题。我希望隐藏红色边框左侧和右侧 (overflow-x) 的所有内容,但保持顶部和底
我有一张 bootstrap 4 卡,我想在其中隐藏字幕的溢出(并显示“...”)。我怎样才能实现这个目标?如果可能的话使用纯引导代码... Test object Added by
我今天更新了我的 flutter ,现在堆栈小部件中的溢出参数不再有效。 Flutter 1.22.0-10.0.pre.252 • channel master • https://github.c
使用 border-radius Opera 实际上不会隐藏元素的溢出部分。我已经尝试应用我设法在类似线程中找到的东西,例如定义边框样式或注意使用绝对和相对参数进行定位。但它仍然无法正常工作。 htm
我在固定大小的 div 中有一个表。如果表格溢出 div,我希望滚动条出现。我还想在向下滚动时克隆表格的标题,以便标题持久存在。我遇到的问题是我希望水平滚动条滚动克隆的标题和原始表格,而垂直滚动条
奇怪,我以为 overflow-x 和 overflow-y 都被广泛支持,但后来我才看到它只支持 CSS3( http://reference.sitepoint.com/css/overflow
unsigned long long terms; unsigned long long test; unsigned long long digit = 1; unsigned long long
我有一个案例,我必须使用 overflow-x:scroll; 水平显示内容。 现在在这个Fiddle第一个 block 有 overflow-y:scroll; 提供滚动,用户可以滚动内容。在第二个
您好,我正在尝试只使用 overflow-x 而不是 overflow-y 结构是这样的 Head1 feild1
我有一个正在运行的计划作业,我想计算过去 30 天的时间。为此,我收到一条警告,表示在表达式中检测到数字溢出。我怎样才能安全地给予 30 天? @Override @Scheduled(cro
我有一个父级,它有多个子级,当父级宽度溢出时,我喜欢显示水平滚动条。 我不想使用“display:inline-block”属性,因为它们之间会产生空白。 这是我的尝试: .parent{ wid
我正在为导航栏编写一些 CSS,我需要为下拉菜单使用 max-height 和 overflow-y: scroll 以便确保它适合页面。但是,每当我将 overflow-y 属性设置为滚动时,它似乎
这是我的问题。我有一个旋转木马,它也像菜单一样。当选项卡的数量高于浏览器可用的宽度空间时,将出现轮播控件。一切正常。但我还在每个选项卡上添加了一个下拉菜单,这就是问题所在。如果我设置 overflow
这个问题在这里已经有了答案: CSS overflow-x: visible; and overflow-y: hidden; causing scrollbar issue (10 个答案) 关
这个问题在这里已经有了答案: How do you keep parents of floated elements from collapsing? [duplicate] (15 个答案) W
这是一个代码片段: div.one { width: 98%; border: 5px solid black; overflow-x: visible; overflow-y: hi
我是一名优秀的程序员,十分优秀!