我有一个产品页面,我通过像这样的while循环输出我的产品......
<?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所点击的产品。现在我想要做的是创建不同的View产品页面,这样我就可以展示不同类型的产品。
我将产品插入数据库的方式是通过我创建的管理页面。我通过这个输入产品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>
如何获取此链接发送或有更好的选择来执行此操作?我希望尽可能地保持这种自动化,这就是为什么我这样做。
答案 0 :(得分:0)
您正在尝试将html代码作为另一个html元素中的值,这只是一个问题。如果你真的想把它拉掉,我建议你阅读htmlentities()。 你的第二个问题是你显然没有逃脱你的插入物。阅读mysqli_real_escape_string()。
在您的情况下,最简单的方法是将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>