Php 将目标链接发送到数据库中,然后将其回显
我有一个产品页面,在那里我通过像这样的while循环输出我的产品Php 将目标链接发送到数据库中,然后将其回显,php,mysql,hyperlink,path,Php,Mysql,Hyperlink,Path,我有一个产品页面,在那里我通过像这样的while循环输出我的产品 <?php // Loop to display all products foreach($products as $id => $product) { ?> <div class="item"> <div class="productpiccontainer"> <?php echo "<img src='product
<?php
// Loop to display all products
foreach($products as $id => $product) {
?>
<div class="item">
<div class="productpiccontainer">
<?php echo "<img src='productpics/". $row['img'] ."' alt='Product Pic'>"; ?>
</div>
<p><?php echo "<a href='./viewProduct.php?view_product=$id'>" . $product['name'] . "</a>"; ?></p>
<p> <?php echo "$" . $product['price']; ?> </p>
</div>
<?php
}
?>
正如您在代码中看到的,我将查看产品页面链接为标准页面,并显示产品id单击的产品。现在我要做的是创建不同的查看产品页面,以便展示不同类型的产品
我将产品插入数据库的方式是通过我创建的管理页面。我通过此输入产品id、名称、类别等,然后将其发送到我的数据库并在产品页面上输出
现在,我的想法是在我的管理页面中创建一个新的输入字段,它是一个选项字段,具有多个“查看产品”模板。我想把我的产品页面上显示的链接发送到我的数据库中
<?php echo "<a href='./viewProduct.php?view_product=$id'>" . $product['name'] . "</a>"; ?>
然后,我可以选择正在创建的每个附加产品,并将其反映到我的产品页面上
所以应该是这样的
<p><?php echo "$product['option']" . $product['name'] . "</a>"; ?></p>
我遇到的问题是我不知道如何发送链接
<a href='./viewProduct.php?view_product=$id'>
输入我的数据库,甚至尝试回显
我试图将其作为一个字段发送,就像我在页面中发送所有其他数据一样
<select class="optionbar" name="viewproduct_type">
<option name="notSelected">Not Selected</option>
<option name="viewproduct_type" value="a href='./viewProduct.php?view_product=$id">Standard</option>
<option name="viewproduct_type" value="Option">Option</option>
</select>
未选择
标准
选项
如何发送此链接,或者有更好的选择吗?我希望尽可能地使其自动化,因此我要这样做。您试图将html代码作为另一个html元素中的值,这只是自找麻烦。如果你真的想做到这一点,我建议你读一下。 您的第二个问题是,您显然没有逃避插入。了解 在您的情况下,最简单的方法是将ID传递给您的选择列表,然后在插入之前将链接与ID结合起来。无需在选择列表值中存储完整链接 示例代码
<html>
<head>
</head>
<body>
<form name="ASD" method="post" action="mysqli.php">
<select name="link">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
<input type="submit" value="Go" />
</form>
<?php
error_reporting(E_ALL);
$db = mysqli_connect("localhost", "root", "", "test", 3306) OR die ('Could not connect to MySQL: ' . mysql_error());
if (isset($_POST["link"])) {
$save="./viewProduct.php?view_product=".$_POST["link"];
$save = mysqli_real_escape_string($db, $save);
$r = mysqli_query($db, "INSERT INTO links VALUES('".$save."')");
if ($r === false) echo "Failed ".mysqli_error();
else echo "Success";
}
?>
</body>
</html>
选择1
选择2
我不确定我是否理解正确,但您只是想将链接保存到数据库中?这到底有什么问题?@cen每当我尝试发送查询时,我都会收到错误,现在允许我插入链接。无法插入:您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解在第1Maybe行的“./viewProduct.php?view_product=$id',”,)”附近使用的正确语法,因为您的链接包含引号。尝试转义它。@cen我尝试去掉引号,然后运行查询,但只插入了字母a。我是这样写的。。。但是我如何输出呢?我仍然不知道如何将链接添加到我的数据库中?我将有两个不同的链接。我希望我添加的每个新产品都能够区分我使用的产品模板(链接)。然后将其输出。对于您将类型保存为int或完整字符串的每个产品,如果您希望基于该类型更改模板,可以使用其他URL参数,例如:?view\u product=$id&type=$product['type']
。然后,您只需根据$\u GET['type']
值在view\u product.php中切换显示即可。