input type image - delete images ..

vasilev

Registered
здравейте ,
има ли начин да се направи така че самото изображение което вадя от blob поле да е всъщност бутон и само с един клик над изображението да може да се изтрие . целта е не да се кликва над checkbox и след това submit button .. а направо над изображението .
 
Правилно ли те разбрах:

HTML:
<html>  
 <head>  
 <script type="text/javascript">  
 function check(checkboxid) {  
 document.getElementById(checkboxid).checked = "checked";  
 }  
 </script>  
 </head>  
 <body>  
 <img src="YOUR_IMAGE" onclick="javascript:check('checkbox');">  
 <input type="checkbox" id="checkbox" />  
 </body>  
</html>
 
правилно си ме разбрал но нещо не сработва :

Код:
<form action="<?=$PHP_SELF?>" method="post">

<?php
$result = mysql_query("SELECT id, image_time, title FROM {$table} ORDER BY id DESC");
if (mysql_num_rows($result) == 0) // table is empty
    echo '<ul><li>No images loaded</li></ul>';
else
{
    echo '<table width="800" border="0"><tr>';
    while(list($id, $image_time, $title) = mysql_fetch_row($result))
    {
        echo "<td valign='bottom'>
		<img src='{$PHP_SELF}?show={$id}' width='150px' height='100px' onclick='javascript:check('checkbox');'> <input type='checkbox' id='checkbox' name='del' value='{$id}'/>
		</td>";
    }

    echo '  </tr></table>';
    echo '<input type="hidden" value="Delete">';
}
?>

</form>
 
Защото не можеш да имаш 1000 елемента с id="checkbox".

Сложи преди while една променлива $i=0;

после със стартирането на while сложи $i++;

и после вместо checkbox слагай
PHP:
javascript:check('checkbox".$i."'); 
checkbox".$i."

трябва да си извел и този javascript, за да работи

[js] <script type="text/javascript">
function check(checkboxid) {
document.getElementById(checkboxid).checked = "checked";
}
</script> [/js]
 
много кавички стават и май от там идва проблемът , но не мога да го подкарам нещо :

Код:
       echo '<table width="800" border="0"><tr>';
    while(list($id, $image_time, $title) = mysql_fetch_row($result))
	$i=0;
    {
		$i++;
        echo "<td valign='bottom'>
		<img src='{$PHP_SELF}?show={$id}' width='150px' height='100px' onclick='javascript:check(\"checkbox'.$i.'\")'> <input type='checkbox' id='checkbox\".$i.\"' name='del' value='{$id}'/>
		</td>";
    }

    echo '  </tr></table>';
    echo '<input type="hidden" value="Delete">';

иначе това което ми даде работи .
 
vasilev каза:
много кавички стават и май от там идва проблемът , но не мога да го подкарам нещо :

Код:
       echo '<table width="800" border="0"><tr>';
    while(list($id, $image_time, $title) = mysql_fetch_row($result))
	$i=0;
    {
		$i++;
        echo "<td valign='bottom'>
		<img src='{$PHP_SELF}?show={$id}' width='150px' height='100px' onclick='javascript:check("checkbox'.$i.'")'> <input type='checkbox' id='checkbox".$i."' name='del' value='{$id}'/>
		</td>";
    }

    echo '  </tr></table>';
    echo '<input type="hidden" value="Delete">';

иначе това което ми даде работи .

Сложи двойни кавички около $i и си ти!
 
Код:
	$i++;
        echo "<td valign='bottom'>
		<img src='{$PHP_SELF}?show={$id}' width='150px' height='100px' onclick='javascript:check(\"checkbox$i\")'> 
		<input type='checkbox' id='checkbox$i' name='del' value='{$id}'/>
		</td>";


без кавички стана :)
благодаря ти.
+1
 

Back
Горе