You only need to set the subscriber ID once, otherwise you are putting four duplicates in to an array, there is only need for one.
<input type="hidden" name="subscriber" value="<?php echo $row_subscriber_username['subscriber_id']; ?>" />
In your insert query you also use $id for the id, but $id is the string "subscriber", did you mean to use mysql_real_escape_string($_POST['subscriber']) instead so the image belongs to them?
As for your image upload problem
Remember you are using a FOR loop, so if you only upload two images the other two will throw an error as they are empty, a you do not want this you must check if the name exists before checking the size, so the uploader will safely ignore the unused image selection forms.
You can likely put this as your checking (untested, but logic works):
for ($i=0; $i < 4; $i++)
if (isset($_FILES['image']['image_name'][$i])
&& !is_empty($_FILES['image']['image_name'][$i])
&& $_FILES['image']['size'][$i] > 0) {
//file size is above zero, name exists, and name is not empty
$tmpName = $_FILES[$column]['tmp_name'];
$fp = fopen($tmpName, 'r');
$data = fread($fp, filesize($tmpName));
$data = addslashes($data);
fclose($fp);
$id = mysql_real_escape_string($_POST[$id]);
$name = mysql_real_escape_string($_POST['image_name']);
$query = "INSERT INTO $table" .
$query .= "($column, $name, $id) VALUES ('$data', '$name', $id)";
$results = mysql_query($query, $link);
print "Thank you, Your Image has been uploaded. DONT FORGET to add the image into your profile! ";
}
else if(!is_empty($_FILES['image']['image_name'][$i]) &&
$_FILES['image']['size'][$i] == 0) {
//Name exists, but file size is zero, this means an improper upload
print "Image $i has not been uploaded properly."
} //no need for an else as nothing was actually uploaded in the other forms.
mysql_close($link);
?>