php - 使用 PHP?= 在页面之间导航
问题描述
我可以使用 ID 但不使用项目名称在 php 页面之间导航。只能用数字不能用字符吗?
作品
$sql = "SELECT id, assigned, project, start, end, status
FROM projects
WHERE id=$id";
<a href="project.php?id='.$row['id'].' ">'.$row['project'].'</a>
page url: https://example.com/project.php?id=1
不工作
$sql = "SELECT id, assigned, project, start, end, status
FROM projects
WHERE project=$project";
<a href="project.php?project='.$row['project'].' ">'.$row['project'].'</a>
page url: https://example.com/project.php?project=Test
谢谢您的帮助!
解决方案
MySQL 对字符串使用单引号或双引号。您的第二个查询将字符串放入查询中,导致查询无效。
这不是一个有效的 SQL 查询:
SELECT `name` FROM `cats` WHERE `breed` = ordinary cat
但这是:
SELECT `name` FROM `cats` WHERE `breed` = 'ordinary cat'
值得注意的是,在您的查询中使用任何输入(包括查询字符串)时要小心,就像您所做的那样。您应该使用准备好的语句来安全地为您的查询转义该字符串。
推荐阅读
- javascript - 无法在按钮单击时查询选择 shadowRoot(用于切换视图)
- html - Flex 不考虑最大宽度
- animation - 如何在 Flutter 中创建旗帜动画?
- wordpress - Elasticsearch 低索引速度
- javascript - 在另一个函数运行时禁用一个 JS 函数
- excel - 从 Web(html) 源将 Unicode 文本导入 Excel 工作表
- google-apps-script - Google Sheets 脚本编辑器 - 创建时间戳并在第一次输入后保持该时间戳不变
- sql - 在 WHERE 子句中使用列别名
- c - 为什么在C语言中将文本从一个文件复制到另一个文件后文件中有多余的空格?
- java - Android Studio Null object Reference