Alcuni suggerimenti su cosa potresti cambiare per farlo funzionare.
1. Carica modulo
Che aspetto ha il tag del tuo modulo? Non dimenticare di includere enctype
parametro come di seguito:
<form type="post" action="" enctype="multipart/form-data">
...
</form>
2. Sanificazione
$company = mysql_real_escape_string($_POST['company']);
$location = mysql_real_escape_string($_POST['location']);
$pic = mysql_real_escape_string($_FILES['userfile']['name']);
Le righe precedenti sono il primo passo per evitare che le tue query subiscano attacchi di SQL injection.
3. Query SQL
$userfile
non esiste poiché hai effettivamente assegnato il nome del file a $pic
invece la tua query dovrebbe apparire così:
$query = "INSERT INTO user_DB
VALUES ('','$company', '$location', '$pic')";
4. Output HTML
Ora per collegarti al file nella tabella di output:
echo "<td>";
echo "<a href=" . $target_path . basename($row['userfile']) . ">
{$row['userfile']}</a>";
echo "</td>";