Привет, ребята, у меня есть проблемы с POST в PHP, как вы знаете, так что, да, мац код
<form action="index.php?upload=true" method="post">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
<?php
if (isset($_GET['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_POST['photo'];
list($width, $height) = getimagesize($uploaded);
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
?>
так что моя проблема: когда я нажимаю кнопку загрузки, я получаю ошибки:
http://postimg.org/image/h39bvyt8j/ (Я не могу загрузить изображения, у меня нет репутации)
и да, все, что мне нужно, это: когда я нажимаю кнопку загрузки, масштаб изображения должен быть записан, как вы видите в нижней части изображения, например: я загрузил изображение, нажал uplaod, и он написал: Ширина: 100px высота: 150px
спасибо за любую помощь! (я думаю, что есть что-то с методом Post)
Вы должны добавить
enctype="multipart/form-data"
в форме и оставьте действие пустым. После этого добавьте следующий код
if (isset($_POST['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_FILES['photo']['name'];
move_uploaded_file($_FILES['photo']['tmp_name'], $uploaded);
list($width, $height) = getimagesize($uploaded);
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
Когда вы загружаете файл, вы должны определить ENCTYPE = «многочастному / форм-данных» как :
<form action="index.php?upload=true" method="post" enctype="multipart/form-data">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
Следует использовать $_FILES['photo']
вместо $_POST['photo']
а это значит, что вам также нужно добавить enctype="multipart/form-data"
на ваш form
элемент.
Прочитайте больше Вот
+ Изменить
if(isset($_GET['upload']))
в
if(isset($_POST['uploaded']))
Также
$uploaded=$_POST['photo'];
в
$uploaded = $_FILES['photo'];
1) Оставь action = ""
пусто, так как код присутствует в том же файле.
2) Добавьте атрибут enctype="multipart/form-data"
в форме тега.
3) Использование $_FILES[];
вместо $_POST[];
4) Добавить ['name']
рядом с ['photo']
И Тада! это должно работать сейчас:
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
<?php
if (isset($_POST['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_FILES['photo']['name'];
list($width, $height) = getimagesize("path/to/images/image.jpg");
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
?>