1

我正在尝试解决我在使用照片选择脚本时遇到的问题。它的工作原理是向用户呈现一页缩略图,每个缩略图下面都有一个复选框。如果用户想要订购该照片,他们单击复选框。我遇到的问题是我不确定如何将照片呼出,因为每张照片在上传时都会被随机命名。

例如,在页面上我点击了 4 张照片,然后点击提交,然后我回显了所有给我的帖子数据:

Array ( [984321568417_jpeg] => on [380737457699_jpeg] => on [632283404882_jpeg] => on [859974304006_jpeg] => on [albumname] => Ben & Katie [submit] => Submit )

所以......如果我想将专辑名称放入数据库中,这很简单,我只需使用

  $_POST['albumname']

但我不知道如何从复选框中收集图像名称,因为发布数据的 id 取决于图像的名称?

      echo '<h1>'.$albumname.'</h1>';
      echo '<p style="clear:both; float:none;">(Click an image to enlarge, select the tick box under an image to add it to the album)</p>';

  $sql2 = <<<SQL
      SELECT *
      FROM `albums`
      WHERE albumid = '$albumid' AND isalbum = ''
  SQL;


  if(!$result2 = $db->query($sql2)){
      die('There was an error running the query [' . $db->error . ']');
  }
  while($row2 = $result2->fetch_assoc()){

      echo '<div class="imagewrapper">';
      echo '<a title="'.$row2['id'].'" class="fancybox-thumb" rel="fancybox-thumb" href="albums/'.$albumid.'/800x600/'.$row2['image'].'"><img style="border-radius:5px;" src="albums/'.$albumid.'/thumbnails/'.$row2['image'].'" /></a>';
        echo '<div style="text-align:center;">';
        echo '<strong>Select : </strong><input class="selectcheckbox" type="checkbox" name="'.$row2['image'].'" id="check_'.$row2['id'].'" />';
        echo '</div>';
        echo '</div>';
      }
  ?>
  <script>

编辑>>>>>>>>>>>

好的,我现在已经在每个复选框标题的开头添加了“check_”,所以我现在得到了以下帖子数据,所以我不确定我是否可以放置类似的东西(将所有包含“checked_”的发布数据放入其数组中自己的 ?)。

Array ( [check_380737457699_jpeg] => on [check_632283404882_jpeg] => on [albumname] => Ben & Katie [submit] => Submit )
4

1 回答 1

2

将您的复选框更改为:

<input type="checkbox" name="photos[]" value="380737457699_jpeg">

然后你可以var_dump($_POST['photos'])输出类似于:

array(
  [0] => 380737457699_jpeg
)
于 2013-09-23T14:10:06.383 回答