我写的一个网页需要加载几乎任何大小的图像,处理进行得很好,我已经尝试了很多图像,但当我试图上传一个2.05 MB的图像,什么都没有上传(我尝试了其他大图像,以找出是否图像的问题).我认为这可能是一个溢出的变量,但我想知道你的想法和解决方案,你会给给予这个问题.
<?php
$titulo = $_POST['titulo-img'];
$nombreImagen = $_FILES['input-img']['name'];
$tipoImagen = $_FILES['input-img']['type'];
$tamagnoImagen = $_FILES['input-img']['size'];
$rutaDestino = $_SERVER['DOCUMENT_ROOT'] . "/shap/imagenes"; //temporal
/*If I do the next: */
echo "Tipo: " . $tipoImagen . "<br>"; //the output would be "Tipo: "
//and the rest would be empty thing which doesn't happen with small image
if($tamagnoImagen<=524288000){ //about 500MB
if($tipoImagen=="image/jpeg" || $tipoImagen=="image/jpg" || $tipoImagen=="image/png" || $tipoImagen=="image/gif" || $tipoImagen=="image/x-icon"){
move_uploaded_file($_FILES['input-img']['tmp_name'], $rutaDestino . "/" . $nombreImagen);
if(file_exists($rutaDestino . "/" . $nombreImagen)){
echo "<p class='text-success'>Imagen subida con exito!</p>";
}else{
echo "<p class='text-danger'>Tuvimos un problema al subir la imagen. Por favor intentelo más tarde.</p>";
}
}else{
echo "<p class='text-danger'>No se admiten los archivos de tipo: " . $tipoImagen . "</p>";
echo "<div class='text-danger'><p>Sólo se admiten archivos tipo: </p><ul><li>jpg</li><li>png</li><li>gif</li><li>ico</li></ul></div>";
}
}else{
echo "<p class='text-danger'>Archivo demasiado grande, lamentamos que nuestro limite de 500MB te detenga, algún día quitaremos este límite.</p>";
echo "<p class='text-danger'>Si deseas que quitemos el límite puedes:</p>";
echo "<ul class='text-primary'><li><a href='#'>Donar</a></li> <li><a href='#'>Ver un anuncio</a></li></ul>";
}
?>
<form action="php/upload_image.php" class="form-horizontal" enctype="multipart/form-data" method="post">
<div class="form-group">
<div class="col-md-12">
<input type="text" placeholder="Titulo de la imagen" class="form-control" name="titulo-img">
</div>
</div>
<div class="form-group">
<div class="col-md-12">
<label for="select-img">
Seleccionar imagen
</label>
<input type="file" name="input-img">
</div>
</div>
<div class="form-group">
<div class="col-md-6">
<input type="submit" class="btn btn-primary form-control" value="Compartir">
</div>
<div class="col-md-6">
<input type="button" class="btn btn-danger form-control" value="Cancelar">
</div>
</div>
</form>
字符串
1条答案
按热度按时间okxuctiv1#
默认情况下,PHP设置为只允许上传2MB或更小的文件。在PHP ini中更改以下值以满足您的需要(我将它们设置为32):
字符串
如果你不想编辑你的ini,你可以使用ini_set():
型