Ciao a tutti (di nuovo)!

Evidentemente, nonostante tutta la buona volontà, non riesco ad uscire dal bozzolo del principiante. Per cui vengo a chiedere il vostro parere anche su questioni che a voi risulteranno assolutamente banali!!!

VI pongo subito la questione, poi vi posto il codice se necessita di vederlo: come diamine è possibile che una condizione if venga eseguita anche se è espressamente scritto che, se ha quel valore, non deve essere eseguita???

Vi posto il codice, mi scuso per la lunghezza.
Codice PHP:

<?php
include('../php/connessione.php');
//echo $_POST['fin_path'] . "
";
//echo 
$_POST['fin_path_original'] . "
";
echo 
$_FILES['fin_path']['tmp_name'] . "
";
echo 
$_FILES['fin_path']['error'] . "
";

if ((
$_FILES['fin_path']['error'] != 4) ) //SE VIENE CARICATO UN NUOVO FILE
{
echo "
copia 
"; //VERIFICO QUALE CONDIZIONE STA ESEGUENDO
//CREO IL NUOVO NOME DEL FILE E DEL THUMB
$file = str_replace(' ', '_', $_POST['fin_nome']) . "_" . $_POST['fin_cod'] . ".jpg";
$file_thumb=str_replace(".jpg","_thumb.jpg",$file);
//COPIO IL NUOVO FILE
chdir("
../archivio dati/$_POST[fin_mark]/Finiture");
$dir_upload= getcwd();
move_uploaded_file (
$_FILES['fin_path']['tmp_name'], "$dir_upload/$file") or die( mysql_error());
$fin_path = $dir_upload ."/" .$file;
//CREAZIONE THUMB
    list(
$width$height$type$attr) = getimagesize($fin_path);
    
$thumb = imagecreatetruecolor(80, 40);
    
$source = imagecreatefromjpeg($fin_path);
    imagecopyresized(
$thumb$source, 0, 0, 0, 0, 80, 40, $width$height) or die( mysql_error());
    //echo 
$file_thumb;
    imagejpeg(
$thumb$dir_upload . "/" .$file_thumb, 50) or die( mysql_error());
    imagecreatefromjpeg( 
$dir_upload . "/" .$file_thumb) or die( mysql_error());
//CANCELLO IL FILE SOSTITUITO
unlink(
$_POST['fin_file']) or die( mysql_error());
unlink(
$_POST['fin_file_thumb']) or die( mysql_error());
//PROCEDO CON L'AGGIORNAMENTO DEI DATI
mysql_select_db("
mob", $con) or die( mysql_error() );
$sql="UPDATE finiture SET fin_nome='$_POST[fin_nome]'fin_show='$_POST[fin_show]'fin_mark='$_POST[fin_mark]' fin_path='$fin_path'fin_grp='$_POST[fin_grp]'fin_cod='$_POST[fin_cod]'fin_type='$_POST[fin_type]'fin_file='$file'fin_file_thumb='$file_thumb' WHERE fin_id='$_POST[fin_id]'";
}
if ((
$_FILES['fin_path']['error'] == 4) && ($_POST['fin_nome'] != $_POST['fin_nome_original']) || ($_POST['fin_cod'] != $_POST['fin_cod_original']))
{
echo "
rinomina"; //VERIFICO QUALE CONDIZIONE STA ESEGUENDO
//SE NON VIENE CARICATO, MA SOLO RINOMINATO
$file = str_replace(' ', '_', $_POST['fin_nome']) . "_" . $_POST['fin_cod'] . ".jpg";
$file_thumb=str_replace(".jpg","_thumb.jpg",$file);
//RINOMINO IL NUOVO FILE
chdir("
../archivio dati/$_POST[fin_mark]/Finiture") or die( mysql_error());
rename (
$_POST['fin_file'], $file) or die( mysql_error());
rename (
$_POST['fin_file_thumb'], $file_thumb) or die( mysql_error());
//PROCEDO CON L'AGGIORNAMENTO DEI DATI
mysql_select_db("
mob", $con) or die( mysql_error() );
$sql="UPDATE finiture SET fin_nome='$_POST[fin_nome]'fin_show='$_POST[fin_show]'fin_mark='$_POST[fin_mark]' fin_path='$_POST[fin_path]'fin_grp='$_POST[fin_grp]'fin_cod='$_POST[fin_cod]'fin_type='$_POST[fin_type]'fin_file='$file'fin_file_thumb='$file_thumb' WHERE fin_id='$_POST[fin_id]'";
}
else
{
echo "
modifica dati"; //VERIFICO QUALE CONDIZIONE STA ESEGUENDO
mysql_select_db("
mob", $con) or die( mysql_error() );
$sql="UPDATE finiture SET fin_nome='$_POST[fin_nome]'fin_show='$_POST[fin_show]'fin_mark='$_POST[fin_mark]' fin_path='$_POST[fin_path]'fin_grp='$_POST[fin_grp]'fin_cod='$_POST[fin_cod]'fin_type='$_POST[fin_type]'fin_file='$_POST[fin_file]'fin_file_thumb='$_POST[fin_file_thumb]' WHERE fin_id='$_POST[fin_id]'";
}
mysql_query(
$sql,$con); /*
if (!mysql_query(
$sql,$con))
    {
        header("
Locationfin_main.php?" . "false");
    }
else
    {
        header("
Locationfin_main.php?" . "true");
    }*/
mysql_close(
$con);
?>
Quello che mi crea il problema è che se io spedisco il file, ma non cambio nessun altro parametro lui mi restituisce sia COPIA che RINOMINA, cosa che non dovrebbe fare appunto perché nell'IF di RINOMINA gli ho specificato che nessun file deve essere stato trasmesso!

Grazie ancora una volta a tutti coloro che si vogliono interessare a questo caso disperato (me medesimo!!! )

Ciao

PS: se qualche buon'anima con tanta pazienza e tanto tempo si volesse mettere a disposizione per accompagnarmi attraverso questa giungla al fine di partorire questo sito gliene sarei eternamente grato!!!!!!!!!!!!!