Il codice che ti propongo vale quello che vale. Di sicuro si puo' fare di meglio (jquery) ma mi è piaciuto l'esercizio di stile.
file : test427.php
Codice PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?php
//---- con l'array simulo la lettura delle immagini di una cartella
$array = array('1.jpg','2.jpg','3.jpg','4.jpg');
?>
<html>
<head>
<title>Untitled</title>
<script language="JavaScript" type="text/javascript">
<!--
function photo(image,objet) {
if (objet.checked) {
add(image);
} else {
remove(image);
}
} // function photo(image,objet)
function add(image) {
htmlImage = getImageHTML(image);
document.getElementById('container').innerHTML = document.getElementById('container').innerHTML + htmlImage;
} // function add(image)
function remove(image) {
objList = document.getElementById('container').getElementsByTagName('img');
n = objList.length;
for (i=0;i<n;i++) {
curImage = objList[i];
if (curImage.alt == image) {
br = curImage.nextSibling;
inp = br.nextSibling;
inp.parentNode.removeChild(inp);
br.parentNode.removeChild(br);
curImage.parentNode.removeChild(curImage);
break;
} // if (curImage.alt == image)
} // for (i=0;i<n;i++)
} // function remove(image)
function getImageHTML(image) {
return '<img src="' + image + '" alt="' + image + '"/><br/><input type="hidden" value="'+image+'" name="image[]" />';
} // function getImageHTML(image)
function convalida() {
//---- controllo che ci sia al minimo una selezione
objList = document.getElementById('container').getElementsByTagName('img');
n = objList.length;
if (n == 0) {
alert('Nessuna selezione');
return false;
} // if (n == 0)
return true;
} // function pippo()
//-->
</script>
</head>
<body>
Seleziona immagini :<br/><?php
foreach($array as $key => $value) {
$id = "c$key";?>
<input type="checkbox" id="<?php print $id ?>" onclick="photo('<?php print $value?>',this)"/>
<img width="30" height="30" src="<?php print $value ?>" alt=""><br/><?php
} ?>
<form action="test427b.php" method="post" id="sub" onsubmit="return convalida()">
Immagini selezionate :<input type="submit" value="Invia"/><br/>
<div id="container">
</div>
</form>
</body>
</html>
file : test427b.php
Codice PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<?php
var_dump($_POST);
?>
</body>
</html>