Сначала я вижу проблему с этими строками:
echo '<table><tbody><tr><th>Product</th><th>Naam</th> <th>Prijs</th><th>Qte</th></tr>';
echo '<table style="border-style: solid; border-width:1px;">';
Поскольку вы просто закрываете свой первый СТОЛ в конце, но не другой внутри:
echo '</tbody></table>';
Вот более легкий путь. Используя БИТЫ (Фон Интеллектуальный Сервис Передачи). Его уже встроенный в WinXP и Vista. В основном, что управляет Windows Updates.
http://blogs.msdn.com/powershell/archive/2009/01/11/transferring-large-files-using-bits.aspx
http://blogs.msdn.com/jamesfi/archive/2006/12/23/how-to-use-bits-to-transfer-files.aspx
Вот хорошая управляемая обертка БИТОВ, которую кто-то записал и как использовать ее.
Можно использовать сокеты в.NET для передачи файлов и данных.
Вы могли бы хотеть рассмотреть потоковую передачу WCF.
Если бы FTP был опцией затем, то я пошел бы с этим ради простоты. Иначе Вы в мир программирования сокета TCP/IP.
Использовать TransmitFile
(который является функцией Win32; возможно, это - метод библиотеки.NET также).
If files exist physically on the machine why not just put them in a folder, make that folder a virtual directory in IIS, and use Content-Based Routing and/or URL Rewriting to route the requests to them.
Используйте FTP через библиотеку с открытым исходным кодом edtFTPnet . Быстро и просто.
Будьте осторожны с BITS. Это очень хороший протокол, но не критическая часть программы обновления Windows. Мы обнаружили, что почти никто из наших корпоративных клиентов не разрешил обновление BITS на своих машинах; поэтому мы не могли создать приложение, основанное на нем.
Эта статья может вам помочь. Речь идет об отправке больших файлов в .NET. Проверьте ссылку:
http://codetechnic.blogspot.com/2009/02/sending-large-files-over-tcpip.html