Если пользователь загружает неправильный файл, то если оператор сбросит $name
на пустой. В чем проблема в следующем коде?if заявление сброс формы данных переменная
if(isset($_POST['submit'])){
$conn= new mysqli('localhost','root','','dilip');
if(!$conn){
die("Not connect".mysqli_error);
}
$stm = $conn->prepare("Insert into comment (Name, email, Message, Image) values (?, ?, ?, ?)");
$stm->bind_param('ssss',$name,$email,$message,$image);
$name = $_POST['name'];
$message = $_POST['readerInput'];
$email = $_POST['email'];
$image='upload/comment/default.jpg';
$time = date("s");
//if(isset($_FILES['image'])){
if(is_uploaded_file($_FILES['image']['tmp_name'])){
$tmp_image = $_FILES['image']['size'];
$finfo = new finfo(FILEINFO_MIME_TYPE);
$file = $finfo->file($_FILES['image']['tmp_name']); //This line checks MIME Type of uploaded image
if($file!=='image/jpeg' && $file !=='image/gif' || $tmp_image > 1024*1024*2){ //1024*1024*2 = 2MB
echo "Upload your Profile Image in jpg/gif format and lower than 2mb. Otherwise continue without Image.";
}
else{
$photo = move_uploaded_file($_FILES['image']['tmp_name'],'upload/comment/'.$name.$time.'.jpg');
$image = 'upload/comment/'.$name.$time.'.jpg';
echo '<script> alert("Your file is accepted.")</script>';
$stm->execute();
$message = 'Your Comment';
$name = 'Your Name';
$email = 'Your eMail';
}
}else{
$stm->execute();
$message = 'Your Comment';
$name = 'Your Name';
$email = 'Your eMail';
}
}
Вопрос с одной строкой и огромный блок кода дают небольшую информацию о том, что может быть проблемой. Каков точный ввод? Какой оператор 'if' сбрасывает значение? Было бы намного полезнее, если бы вы объяснили, что происходит более подробно, и уменьшите количество кода до минимума, демонстрируя ошибку (и добавьте некоторое объяснение, если оно еще больше, чем несколько строк). – mingos
if ($ file! == 'image/jpeg' && $ file! == 'image/gif' || $ tmp_image> 1024 * 1024 * 2) {// 1024 * 1024 * 2 = 2MB echo "Загрузить свой Изображение профиля в формате jpg/gif и ниже 2mb. В противном случае продолжайте без изображения. "; } – PramodJha