проверьте пожалуста!!!!!!!! вот тут непашет!! ie ("<br>$error"); } ////////////////////////ВОТ ТУТ ДОЛЖНО БЫТЬ ELSE{ А ОКАНЧИВАТСЯ ДОЛЖНО В САМОМ НИЗУ. нО ОНО НЕ ПАШЕТ... /////////////////////////////////////////////////////// ////////////////////////////////////////////////////// /////////////////////////////////////// НЕ ЗНАЮ ЧЕ ДЕЛАТЬ! почему елсе не работает внутри елсе??? PHP: <?php // Каталог, в который мы будем принимать файл: $uploaddir = './files/'; $uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']); //определяем размер файла $max_file_size = "1111111"; $file_size = $_FILES['uploadfile']['size']; if($file_size < $max_file_size) { //////////////////ОТДЕЛИМ ПЛЕВА $namesi = $_FILES['uploadfile']['name']; $namesi = strrchr($namesi, "."); $con = array(".doc", ".png", ".jpeg", ".gif", ".txt", ".zip", ".jar", ".jad", ".mp3", ".mp4", ".cab", ".pdf", ".exe", ".div", ".mov", ".jpg", ".raw", ".TIFF", ".WMA", ".rar",); if(!in_array($namesi,$con)) { $error = "Загрузка не удалась. Допустимые расширения-"; foreach( $con as $exts ){ $error .= "$exts "; } die ("<br>$error"); } ////////////////////////ВОТ ТУТ ДОЛЖНО БЫТЬ ELSE{ А ОКАНЧИВАТСЯ ДОЛЖНО В САМОМ НИЗУ. нО ОНО НЕ ПАШЕТ... /////////////////////////////////////////////////////// ////////////////////////////////////////////////////// /////////////////////////////////////// // Копируем файл из каталога для временного хранения файлов: if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile)) { echo "<h3>Файл успешно загружен</h3>"; ////////////////////////////НАЧАЛО ПАРОЛЯ // Символы, которые будут использоваться в пароле. $chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP"; // Количество символов в пароле. $max=20; // Определяем количество символов в $chars $size=StrLen($chars)-1; // Определяем пустую переменную, в которую и будем записывать символы. $password=null; // Создаём пароль. while($max--) $password.=$chars[rand(0,$size)]; /////////////////////////////// КОНЕЦ ПАРОЛЯ // Разрешенные расширения (разделяются через | ) rename('files/'.$_FILES['uploadfile']['name'], 'files/'.$password. $namesi); echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>"; print "<br>Имя сгенерированого файла<br><br> $password$namesi <br>"; } else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер по неизвестной причине!</h3>"; exit; } } else { print "Файл превышает допустимый размер (1 мегабайт) Загрузка не удалась."; } ?>
Он не бесконечный Проверяется значение $max и декрементируется, когда значение $max будет равно нулю, цикл прервется
Мне нравится делать так: PHP: <?php // Какое-то положительное значение $a = 25; // Делаем его отрицательным if($a > 0) $a *= -1; // Теперь используем обычный инкремент while($a++){ echo $a.'<br>'; } ?> Знаю-знаю, очень непрактично, просто нравится
если вам надо то вот вместе с else PHP: <?php // Каталог, в который мы будем принимать файл: $uploaddir = './files/'; $uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']); //определяем размер файла $max_file_size = "1111111"; $file_size = $_FILES['uploadfile']['size']; if($file_size < $max_file_size) { //////////////////ОТДЕЛИМ ПЛЕВА $namesi = $_FILES['uploadfile']['name']; $namesi = strrchr($namesi, "."); $con = array(".doc", ".png", ".jpeg", ".gif", ".txt", ".zip", ".jar", ".jad", ".mp3", ".mp4", ".cab", ".pdf", ".exe", ".div", ".mov", ".jpg", ".raw", ".TIFF", ".WMA", ".rar",); if(!in_array($namesi,$con)) { $error = "Загрузка не удалась. Допустимые расширения-"; foreach( $con as $exts ){ $error .= "$exts "; } die ("<br>$error"); } else { // Копируем файл из каталога для временного хранения файлов: if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile)) { echo "<h3>Файл успешно загружен</h3>"; ////////////////////////////НАЧАЛО ПАРОЛЯ // Символы, которые будут использоваться в пароле. $chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP"; // Количество символов в пароле. $max=20; // Определяем количество символов в $chars $size=StrLen($chars)-1; // Определяем пустую переменную, в которую и будем записывать символы. $password=null; // Создаём пароль. while($max--) $password.=$chars[rand(0,$size)]; /////////////////////////////// КОНЕЦ ПАРОЛЯ // Разрешенные расширения (разделяются через | ) rename('files/'.$_FILES['uploadfile']['name'], 'files/'.$password. $namesi); echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>"; print "<br>Имя сгенерированого файла<br><br> $password$namesi <br>"; } else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер по неизвестной причине!</h3>"; exit; } } else { print "Файл превышает допустимый размер (1 мегабайт) Загрузка не удалась."; } } ?> поможете разобратса? мой проект уже сутки висит из за этой фигни!
и как вы определяетье что он не работает? если else не работает значит выполняеться if(!in_array($namesi,$con)).
вы можете обьяснить где конкретно ошибка? а то ваш совет не помог... PHP: if ( $S = "1" ) { print " ПРАЛЬНО";} else { // Копируем файл из каталога для временного хранения файлов: if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile)) { echo "<h3>Файл успешно загружен</h3>"; ////////////////////////////НАЧАЛО ПАРОЛЯ // Символы, которые будут использоваться в пароле. $chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP"; // Количество символов в пароле. $max=20; // Определяем количество символов в $chars $size=StrLen($chars)-1; // Определяем пустую переменную, в которую и будем записывать символы. $password=null; // Создаём пароль. while($max--) $password.=$chars[rand(0,$size)]; /////////////////////////////// КОНЕЦ ПАРОЛЯ // Разрешенные расширения (разделяются через | ) rename('files/'.$_FILES['uploadfile']['name'], 'files/'.$password. $namesi); echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>"; print "<br>Имя сгенерированого файла<br><br> $password$namesi <br>"; } else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер по неизвестной причине!</h3>"; exit; } } else { print "Файл превышает допустимый размер (1 мегабайт) Загрузка не удалась."; } }