название тестовый сценарий для класса, Foo должен быть FooTestCase или что-то как он (FooIntegrationTestCase или FooAcceptanceTestCase) - так как это - тестовый сценарий. см. http://xunitpatterns.com/ для некоторых стандартных соглашений о присвоении имен как тест, тестовый сценарий, протестируйте приспособление, метод тестирования, и т.д.
Загрузка файлов осуществляется через $ _ FILES
. Все остальное проходит через $ _ POST
(при условии, что ваша HTML-форма имеет атрибут method
, установленный на "post"
).
$ _ POST
должен работать нормально для текстового поля. Вам нужно будет использовать $ _ FILES
для фактического файла. Учитывая следующий HTML:
<html>
<body>
<form action="self.php" method="post" enctype="multipart/form-data">
Name: <input type="text" name="imageName" />
Image: <input type="file" name="image" />
<input type="submit" value="Submit" />
</form>
</body>
</html>
Вы можете получить доступ к полям следующим образом:
<?php
echo $_POST['imageName'];
echo "<pre>";
echo var_dump($_FILES['image']);
echo "</pre>";
?>
В вашем коде все в порядке; могла быть проблема с конфигурацией сервера.
<form action="" method="post" enctype="multipart/form-data">
Name: <input type="text" name="imageName">
Image: <input type="file" name="image">
<input type="submit" value="submit">
</form>
<?php var_dump($_POST, $_FILES); ?>
Скрипт: http://sandbox.phpieceofcake.com/upload/1246558881125336.php
Источник: http://sandbox.phpieceofcake.com/ upload / 1246558881125336.phps
[2010-02-13 10:57 UTC] sudeshkmr at yahoo dot com
Я столкнулся с той же проблемой, но ничего не помогло. Я тестировал Apache 2.2, PHP 5.3 в Windows Vista. Я также тестировал Ubuntu (Karmic) с Apache 2.2 и PHP 5.3. Я также тестировал с nGinX 0.8 и PHP 5.3.
Затем я нашел обходной путь. Параметр action = "" не должен быть самой страницей скрипта, на которой у вас есть форма загрузки файла. Например, у вас есть страница index.php с формой загрузки.
Action = "upload.php" <-------- Эта страница должна отличаться от страницы формы загрузки файла, и она работает во всех конфигурациях PHP!
Не использовать для параметра действия.