У меня есть базовая форма для загрузки изображения:
<?php
if(!empty($_POST['?upload_img'])) {
echo "true<br>";
} else { echo "false<br>"; }
?>
<html>
<form action='' method='post' enctype='multipart/form-data'>
<input type='file' name='input_img' id='input_img'><br>
<input type='submit' value='Upload Image' name='?upload_img'>
</form>
</html>
Я бы хотел, чтобы пара логический / оценочный PHP запускалась только один раз для каждой загрузки.
Я пытался оценить, используя !empty
, isset
, sizeof(foo)>0
Я также пытался найти решение, используя $_SESSION
s
Есть ли правильное использование unset
или $_POST=array()
/ $_FILE=array()
, которое я пропустил?
Я могу добиться желаемого поведения с помощью сессий:
<?php
session_start();
if(!empty($_SESSION['foo'])) {
echo "true<br>";
} else { echo "false<br>"; }
?>
<html>
<?php
if(!sizeof($_SESSION['foo'])) {
$_SESSION['foo']=array();
$_SESSION['foo']['bar']="path/to/the/file.png";
} else { $_SESSION=array(); }
?>
</html>
Как можно добиться того же с помощью ввода <form>
вместо этого?
Любая помощь очень ценится!