PHP提交带有图像的表单。访问下一页上的图像

时间:2012-03-12 02:54:30

标签: php

我在尝试从下一页的表单访问提交的图片时遇到问题。

这是我的html中的php。

我正在循环浏览图像文件夹并将它们回显到页面上。

<form action = "Order_Form.php"
    method = "post"
    enctype = "multipart/form-data">
<?php
    $files = glob("images/*.*");
    $count = 0;


for ($i=0; $i<count($files); $i++)
{ 
 $num = $files[$i]; 

    if($count == 4){
      echo "<br>";
      $count = 0;
    }
    $count++;


    echo '<input type="image" src="'.$num.'" 
    alt="img"  name="image" class = "galImgs" value="submit"  />';
}


?>
</form>

现在提交我进入Order_Form.php

我想显示用户点击/提交到页面的图片。 我一直在尝试

      $nm = $_POST['image'];      
      echo '<img src="/files/images/.$nm" class= "image"/>';

我很确定它必须是简单的东西,但经过大量的谷歌搜索和试用后错误我似乎无法弄清楚这一点。

任何帮助将不胜感激。谢谢。

3 个答案:

答案 0 :(得分:0)

你的$ nm变量没有被解释,因为它是单引号。

答案 1 :(得分:0)

如果您只使用普通的<img>标记和onClick事件,将隐藏的输入字段设置为所选图像的值,则可能会更容易。

答案 2 :(得分:0)

您的按钮的值将是value属性的值,或始终为Submit

通过将$_POST附加到输入[$num]属性,在name中使用一系列图片。

echo '<input type="image" src="'.$num.'" 
    alt="img"  name="image[' . $num . ']" class = "galImgs" value="submit"  />';

这会将输入image作为一个类似

的数组发送到$_POST
// Suppose two of them (22 & 14) were clicked (which isn't actually possible but illustrates it)
// The values are always "submit" but the keys are useful to you.
array(1) {
  ["image"]=>
  array(2) {
    [22]=>
    string(6) "submit"
    [14]=>
    string(6) "submit"
  }
}

然后当您从$_POST检索它时,您知道哪些已被点击:

foreach ($_POST['image'] as $im=>$num) {
   // The array key holds the image number
  echo '<img src="/files/images/' .$im .'" class= "image"/>';
}