function zapisz_plik($key, $numer)
{
global $nazwa_pliku;
global $ostatni;
$filess = glob("./../glowna_img/slide$numer*.jpg");
if (is_array($filess) && count($filess) > 0) {
foreach ($filess as $filename) {
$files[] = $filename;
}
}
if (!empty($files)) {
$ostatni = $files[count($files)-1];
$pokaz_ostatni = explode("slide$numer-", $ostatni);
$ostatni_czysty = explode(".jpg", $pokaz_ostatni[1]);
$dodawanie = $ostatni_czysty[0] +1;
if (strlen($dodawanie) == 1) $dodawanie = '0'.$dodawanie;
$nazwa_pliku = "slide$numer-$numer_$dodawanie.jpg";
$lokalizacja = "./../glowna_img/$nazwa_pliku";
}
else {
$nazwa_pliku = "slide$numer-01.jpg";
$lokalizacja = "./../glowna_img/slide$numer-01.jpg";
}
if(is_uploaded_file($_FILES['obrazek']['tmp_name'][$key]))
{
list($width, $height) = getimagesize($_FILES['obrazek']['tmp_name'][$key]);
if ($width <= 820 && $height <= 444)
{
if(!move_uploaded_file($_FILES['obrazek']['tmp_name'][$key], $lokalizacja))
{
echo 'problem: Nie udało się skopiować pliku do katalogu.';
return false;
}
}
else {
echo 'Plik jest za dużych rozmiarów, proszę wskazać plik o maksymalnym rozmiarze 820x444px';
****return false;****
}
}
else
{
echo 'problem: Możliwy atak podczas przesyłania pliku.';
echo 'Plik nie został zapisany.';
return false;
}
return true;
}
这是我保存照片的功能,一个返回不想工作,在此代码下显示:
echo 'Plik jest za dużych rozmiarów, proszę wskazać plik o maksymalnym rozmiarze 820x444px';
这是我使用它的代码。
if (isset($_POST['wyslij'])) {
for($key=0; $key < count($_FILES['obrazek']); $key++) {
if (!empty($_FILES['obrazek']['name'][$key])) {
if (sprawdz_bledy($key) && sprawdz_typ($key)) {
$numer = $key + 1;
zapisz_plik($key,$numer);
if (zapisz_plik == true) {
try{
$stmt = $pdo -> prepare("UPDATE Slider SET Nazwa = :nazwa WHERE ID = :ID ");
$stmt -> bindValue(':nazwa', $nazwa_pliku, PDO::PARAM_STR);
$stmt -> bindValue(':ID', $numer, PDO::PARAM_INT);
$stmt -> execute();
}catch(PDOException $e){
$display = 'Błąd zapytania:<br> ' . $e->getMessage();
}
if (isset($ostatni)) unlink($ostatni);
}
}
}
}
}
这个IF:
if (zapisz_plik == true) {
不想工作。
当我尝试发送大小不合适的照片(超过820x444)时,我看到错误ECHO,但是SQL中的IF更改名称。
你能告诉我为什么,这次回归不想工作吗?
答案 0 :(得分:0)
代码
if (zapisz_plik == true) {
zapisz_plik没有意义。如果你打开了display_errors,在开发时你应该总是这样,你会收到警告,告诉你这个。
E_NOTICE:类型8 - 使用未定义的常量zapisz_plik - 假设 'zapisz_plik'
您需要检查返回值
$return = zapisz_plik($key,$numer);
if ($return == true) {
或
if (zapisz_plik($key,$numer) == true) {