Hej, mam problem z uploadem plików. Cały formularz wysyła się przez POST i wszystkie dane dostają się do skryptu oprócz pliku. W dodatku głupiego obrazka. Poniżej wklejam listingi mojego kodu.
products-add-n-view.phtml - formularz tworzący nowy produkt
<!-- ... --> <http://december.com/html/4/element/form.html action="modyfikacja.php" enctype="multipart/form-data" method="POST"> <http://december.com/html/4/element/h3.html>Dodaj nowy produkt</http://december.com/html/4/element/h3.html> <http://december.com/html/4/element/table.html> <http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/td.html>nazwa</http://december.com/html/4/element/td.html> <http://december.com/html/4/element/td.html><http://december.com/html/4/element/input.html type="text" name="name"></http://december.com/html/4/element/td.html> </http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/td.html>link</http://december.com/html/4/element/td.html> <http://december.com/html/4/element/td.html><http://december.com/html/4/element/input.html type="text" name="link"></http://december.com/html/4/element/td.html> </http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/td.html>zdjęcie</http://december.com/html/4/element/td.html> <http://december.com/html/4/element/td.html><http://december.com/html/4/element/input.html type="file" name="plik" /></http://december.com/html/4/element/td.html> </http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/tr.html> <http://december.com/html/4/element/td.html colspan="2"><http://december.com/html/4/element/input.html type="submit" value="Wyślij" /></http://december.com/html/4/element/td.html> </http://december.com/html/4/element/tr.html> </http://december.com/html/4/element/table.html> <http://december.com/html/4/element/input.html type="hidden" name="opt" value="product_new" /> <http://december.com/html/4/element/input.html type="hidden" name="MAX_FILE_SIZE" value="50000" /> </http://december.com/html/4/element/form.html> <!-- ... -->
// ... if (http://www.php.net/isset ($_POST['opt'])) { if ($_POST['opt'] == 'product_new') { http://www.php.net/echo '<br />Tworzenie nowego produktu'; http://www.php.net/print_r($_POST); // przenoszenie pliku if (http://www.php.net/isset ($_POST['img'])) { http://www.php.net/echo 'jest img'; http://www.php.net/print_r($_FILES); } } // ...
Ponieważ plik masz w tabilcy $_FILES a nie $_POST
if (http://www.php.net/isset ($_POST['img'])) {
http://www.php.net/print_r( $_FILES );
Powiem szczerze że myślałem iż informacje o przesłanym pliku znajdują się również w tablicy $_POST. Teraz wszystko się zgadza i wydaje się proste. Bardzo dziękuję za pomoc i przepraszam za niechlujstwo w kodzie. Zmieniałem atrybut name pola file, bo wydawało mi się że wcześniej użyłem jakiejś zabronionej nazwy. Później zapomniałem zmienić przeszukiwanie w skrypcie. Mimo wszystko nic by to nie dało, bo pliki idą do zmiennej $_FILE, a w $_POST nie ma żadnej wzmianki. Temat można zamknąć.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)