PHP将信息从一个页面转到另一个页面
我对php非常陌生,我有一个显示图像的购物车。mysql数据库中的产品名称和详细信息。其代码如下所示:PHP将信息从一个页面转到另一个页面,php,mysql,data-transfer,Php,Mysql,Data Transfer,我对php非常陌生,我有一个显示图像的购物车。mysql数据库中的产品名称和详细信息。其代码如下所示: <table border="0" cellpadding="2px" width="600px"> <? $result=mysql_query("select * from products"); while($row=mysql_fetch_array($result)){ ?> <tr>
<table border="0" cellpadding="2px" width="600px">
<?
$result=mysql_query("select * from products");
while($row=mysql_fetch_array($result)){
?>
<tr>
<td><img src="<?=$row['picture']?>" /></td>
<td> <b><?=$row['name']?></b><br />
<?=$row['description']?><br />
Price:<big style="color:green">
£<?=$row['price']?></big><br /><br />
<input type="button" value="Add to Cart" onclick="addtocart(<?=$row['serial']?>)" />
</td>
</tr>
<tr><td colspan="2"><hr size="1" /></td>
<? } ?>
</table>
" />
价格:
英镑
制作如下链接:
<a href="product.php?product_id=<?=$row['serial']?><?=$row['name']?></a>
在该代码下,您可以添加图片和价格等内容:)
产品的序列号保存在URL(product_id)中,然后由$GET变量调用。因此product_id=1将加载序列号为1的产品
如果你查看当前页面的URL,它中间有8142009个数字。如果你将它改为8142008,它将在你的前面加载前面的问题。这个例子以完全相同的方式工作。
< P>你需要使用POST或get参数来完成这项工作。
我将把显示产品的实际逻辑留给您,但是如果您查看web地址,它们有时会采用的形式。在这种情况下,“?”后面的所有内容都称为查询字符串,并具有&“分隔的变量列表。在本例中,有两个变量foo和stuff,其值分别为bar和no
这也将调用一个名为“index.php”的脚本。PHP公开了一个名为$\u GET
的超全局变量(也就是说,一个从任何地方都可以神奇地使用的变量)。这是一个数组,包含GET变量名与其值之间的映射。在这种情况下,它将是数组(“foo”=>“bar”,“stuff”=>“no”)
,因此您可以使用$\u GET['foo']
和$\u GET['stuff']
访问所需的值
POST参数类似,但略有不同。这些是从HTML表单提交的(将“method”属性设置为“post”)。在这种情况下,超级全局$\u POST
以相同的方式填写,但数组键是HTML中输入元素的名称,它们的值是各自元素的值,因此
将在$\u POST
中创建一个名为“foo”的条目,其值为“bar”
因此,您应该能够很好地实现所需的功能。您可能需要在mysql表中添加一个新字段来存储产品页面url,然后执行以下操作
<table border="0" cellpadding="2px" width="600px">
<?
$result=mysql_query("select * from products");
while($row=mysql_fetch_array($result)){
?>
<tr>
<td><a href="<?=$row['product_page']?>"><img src="<?=$row['picture']?>" /></a></td>
<td> <b><?=$row['name']?></b><br />
<?=$row['description']?><br />
Price:<big style="color:green">
£<?=$row['price']?></big><br /><br />
<input type="button" value="Add to Cart" onclick="addtocart(<?=$row['serial']?>)" />
</td>
</tr>
<tr><td colspan="2"><hr size="1" /></td>
<? } ?>
</table>
价格:
英镑
只是建立一个链接<代码>
?我遗漏了什么吗?@Brad nope/+1,你什么也没遗漏。建立链接?你是说只是一个指向另一个页面的超链接?怎样这不可能那么容易…@Jahed,怎么可能不那么容易呢?我在哪里插入?还有其他有用的超全局词,比如$\u COOKIE
和$\u SESSION
,但是我将把这些留给你,因为它们不是100%适用于这个问题。谢谢peter,我已经按照你说的做了,但不幸的是你不能点击这个名字。由于某种奇怪的原因,没有链接。以下是我的php代码:
很抱歉,有一个输入错误,请将其从herf改为href-lol
<table border="0" cellpadding="2px" width="600px">
<?
$result=mysql_query("select * from products");
while($row=mysql_fetch_array($result)){
?>
<tr>
<td><a href="<?=$row['product_page']?>"><img src="<?=$row['picture']?>" /></a></td>
<td> <b><?=$row['name']?></b><br />
<?=$row['description']?><br />
Price:<big style="color:green">
£<?=$row['price']?></big><br /><br />
<input type="button" value="Add to Cart" onclick="addtocart(<?=$row['serial']?>)" />
</td>
</tr>
<tr><td colspan="2"><hr size="1" /></td>
<? } ?>
</table>