0

我创建了一个 php 站点,以前它只列出具有定义值的产品。我现在已将其更改为包含一系列产品,例如所有产品 WHERE id = "spotlights"

这很好用,所以这意味着我可以将新产品添加到数据库中,但我仍然需要手动添加第二页。例如,从主页上的产品 div 到 www.example.com/spotlight_1.php

PHP 中是否有将我的 index.php 中的数据(例如 ID)传送到下一页?这样我就可以有一个模板 product.php 页面,并且可以使用数据库拉取来回显所需的产品信息。

因此,在 index.php 上,我单击 ID="1" 的产品,然后在 product.php 页面上加载产品 1 的相关数据。

我可以自己编写 php SQL/mySQL 调用,它只是从上一页中携带一个我不理解的值的方法

问候

亨利

ps 所有的 ID 和事物已经作为 1 到 3 位的值存储在数据库中,例如 3 或 93 或 254

非常感谢任何建议

问候

亨利

4

4 回答 4

2

我不确定我是否正确理解了这一点,但您可以使用 GET 变量将变量从一个页面传递到另一个页面,或者换句话说,使用 URL 中的查询字符串。

因此,在 index.php 中,您将拥有如下链接:

<a href="product.php?p=1">Product 1</a>

在第二页 (product.php) 中,您可以使用以下代码获取此变量:

$product_id = $_GET['p'];

然后像这样查询你的数据库:

$query  = "SELECT * FROM products WHERE id = '" . $product_id . "'";
$result = mysql_query($query);

参考:http ://www.w3schools.com/php/php_get.asp

注意:请注意查询数据库的方式,前面的代码只是演示如何检索信息,但不是一个安全的解决方案。我建议您检查 PDO (http://php.net/manual/es/book.pdo.php)。

于 2012-11-15T23:15:26.270 回答
1

如果您不关心其他用户查看您的变量,您可以使用 GET,或者您可以使用 POST 不让用户知道您的变量是什么(对于密码提交很有用)

需要提到的一件事是,如果使用 GET (url?key=value),则需要使用 PHP 的 utf8 enconde 函数对值进行编码,如果使用 POST,则不必担心这一点。

于 2012-11-15T23:07:07.883 回答
0

有很多方法。您可以将数据放入会话变量中,您可以将数据发布到第二页或通过 GET 作为 URL 参数传递数据,甚至可以将数据保存在浏览器 cookie 中。

您可能使用哪种方法可能取决于数据的安全要求以及您是否希望能够严格通过 URL 访问该数据(如果是 URL 参数)。

于 2012-11-15T23:00:37.097 回答
0

您可以在请求范围内继续传递值,直到您不再需要它(通常在 url ?var=value 中传递),或者如果它需要比请求范围更长时间,您也可以使用会话。

于 2012-11-15T23:01:12.073 回答