ОК, для меня это звучит так, как будто у вас есть форма, одно из полей для загрузки - и вы хотите отправить форму, а затем создать CSV из полей формы (с загрузкой, просто показывающей местоположение файла) И загрузить файл?
Если это так, обработайте загрузку файла как обычно, поэтому форма должна иметь (например):
<form enctype="multipart/form-data" action="csvbuilder.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
<input name="uploadedfile" type="file" />
//other fields
<input type="submit" value="Upload File" />
</form>
Затем в целевом скрипте вида (csvbuilder.php):
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)
Чтобы затем сослаться на файл в CSV, вы должны просто повторить:
"http://www.domain.com/uploads/".basename( $_FILES['uploadedfile']['name']);
Лучшее, что вы можете сделать, - это просто указать местоположение, как указано выше, CSV по умолчанию не поддерживают ссылки (хотя некоторые программы, такие как Excel, могут «интерпретировать» ссылки и делать их кликабельными, если вы оберните их в разметку)