我正在努力让网站正常运转。我所拥有的基本上是两个显示的图像(随机,从mySQL数据库中取出)。我需要做的是(当用户点击其中一个图像时)以下内容:
我需要使用$ _POST将值数组传递给下一页。所以我想:
<form name="input" action="the_page.php" method="POST">
<input type="image"
name="img"
src="image.png"
value ="dat1[\"data1\",\"data2\",\"data3\"]">
<!-- If value must be a single string, I'll use hidden inputs-->
</form>
<form name="input" action="the_page.php" method="POST">
<input type="image"
name="img"
src="image2.png"
value ="dat2[\"data1\",\"data2\",\"data3\"]">
</form>
然后,我可以使用更新记录的一点php upvote()函数在mySQL数据库上投票选择图像。在加载新页面时完成upvoting过程。由此,我有几个问题:
这是我的解决方案:
<?php
echo "<form name=\"input\" action=\"F2F.php\" method=\"POST\">";
echo "<input type=\"hidden\" name =\"table\" value=\"".$table1."\">";
echo "<input type=\"image\" name=\"nom\" src=\"".$IMG_Route1."\" value =\"".$Nom_base1."\" border=\"0\">";
echo "</form>";
?>
(图片去的地方)
然后,在标题上:
<?php
if ($_POST['nom']||$_POST['nom_x']){
if (!$_POST['nom']){
echo 'Could not retrieve name. $_POST[\'nom_x\'] = '.$_POST['nom_x']. mysql_error();
exit;
}
if (!$_POST['table']){
echo 'Could not retrieve table. $_POST[\'table\'] = '.$_POST['table']. mysql_error();
exit;
}
upvote($_POST['table'],$_POST['nom']);
}
?>
答案 0 :(得分:1)
您可以使用一种形式和一组单选按钮来简化操作。单击标签将切换单选按钮。您可以使用逗号分隔每个复选框的多个值,稍后您可以将其抽象出来(见下文)
<form name="input" action="the_page.php" method="POST">
<ul>
<li>
<label>
<img src="whatever.jpg" />
<input type="radio" name="selectedImage" id="img1" value="12,16,19" />
</label>
</li>
<li>
<label>
<img src="whatever2.jpg" />
<input type="radio" name="selectedImage" id="img2" value="12,16,19" />
</label>
</li>
</ul>
</form>
您可以通过为更改事件添加侦听器来检测何时选择单选按钮,然后提交表单。
$('input[name="selectedImage"]').change(function() {
$('form[name="input"]').submit();
});
要抽象多个值,您可以使用PHP来爆炸表单结果,这将返回值的数组。
$selectedImageValues = array();
$selectedImageValues = explode(",", $_POST['selectedImage']);
从那里你可以拉出不同的值并将数据保存到数据库中。