我已经创建了网格使用表,但似乎无法弄清楚如何让用户选择网格中的特定框。 (即用户选择3个盒子,每个盒子都有xy坐标,我需要将其存储在数据库中)HTML/PHP的 - 我需要创建一个10×10的网格与100盒,每个需要可选
也许我不应该使用表格,而是使用div?
任何帮助,将不胜感激。
注:我是一个新手到PHP,所以请不要以为我知道很多:)
我已经创建了网格使用表,但似乎无法弄清楚如何让用户选择网格中的特定框。 (即用户选择3个盒子,每个盒子都有xy坐标,我需要将其存储在数据库中)HTML/PHP的 - 我需要创建一个10×10的网格与100盒,每个需要可选
也许我不应该使用表格,而是使用div?
任何帮助,将不胜感激。
注:我是一个新手到PHP,所以请不要以为我知道很多:)
它不看,布局事项您的问题,无论是表或DIV为主。如果我理解正确,您需要获得像3-2
这样的坐标,以防用户点击位于第二列第三格上的框。
要做到这一点,你只需要为你的变量使用一个数组数组。
<input type="checkbox" name="boxes[<?php echo $i;?>][<?php echo $j;?>]" value="1" />
然后,您适当地增加i和j变量以从框[0] [0]到框[9] [9]获取框名称。
最后,在服务器端,当用户提交表单,您可以检查值那样:
$boxes = $_POST['boxes'];
for (int i=0; i<9; i++) {
for (int j=0; j<9; j++) {
if (isset($boxes[$i][$j])) {
// here you have your coordinates for a selected box
}
}
}
大部分取决于你必须做什么,但这个简单的例子应该做的正是你需要的。考虑使用JS框架。
<style>
td{empty-cells: show;}
</style>
<script>
function cellSelected(this,i,q)
{
alert("Cell ("+i+","+q+")");
}
</script>
<?php
echo '<table>';
for($i=0;$i<10;$i++)
{
echo '<tr>';
for($q=0;$q<10;$q++)
{
echo '<td onClick="cellSelected(this,'.$i.','.$q.')"></td>';
}
echo '</tr>';
}
echo '</table>';
?>
我会避开一般的表格。
如果您进行了按钮的网格,在表单中,您可以:
谢谢大家。
这里就是我最后做
从上面合并的两个解决方案的排序。希望我可以为这些讨论做出贡献,因为我学到了更多。
我明白这是做什么。有一个问题,但: 解析错误:语法错误,意外'=',期待';'第21行中的/Users/satjotsawhney/localhost/boxes/test1.php 第21行为:for(i = 0; i <10; i ++) – Satjot 2010-10-25 03:22:04
在PHP部分中,我们可能需要使用$ i和$ q 。 – JSchaefer 2010-10-25 03:45:21
@JSchaefer,@Satjot:切换语言往往没有帮助,一些语法错误抱歉:) – Cesar 2010-10-25 04:12:27