Muy buenas.
Tengo un pequeño gran problema xD
La cosa es que en una sección de un plugin que estoy haciendo se pueden cambiar las imágenes. Y bueno las imágenes me las muestra bien, cada una con su ID para luego hacer las gestiones oportunidas en la BD pero a la hora de subir una me dice todo el rato (el error que le puse yo) que el formato no es permitido, y en los parámetros puse que esos tipos de formatos los permita. Os dejo el código para que le echen una ojeada:
Código PHP:
if($_REQUEST['editarlista']==2){
?>
<form action="admin.php?page=wp-listas/listas_manager.php&idcat=4&paso=2&idlista=3&editarlista=2&cambiarimg=<?php echo $_REQUEST['cambiarimg']; ?>&subirimg=1" method="post" name="formcambiarimg">
<div class="tablaNew">
Selecciona la imagen que deseas cambiar. <br /> <br />
<?php
$IDpropia = $_REQUEST['idlista'];
$query_img = $wpdb->get_results("SELECT * FROM wp_lista WHERE lista_id_propia='$IDpropia' ");
foreach($query_img as $query_img_print){
echo "<a href='admin.php?page=wp-listas/listas_manager.php&idcat=4&paso=2&idlista=3&editarlista=2&cambiarimg=".$query_img_print->lista_id."'><img src='http://".$query_img_print->lista_imagen." ' width='199px' height='133px'></a>";
}
# Si está definido cambiarimg mostrar el upload.
if(isset($_REQUEST['cambiarimg'])){
echo "<br> <br>Selecciona una imagen <input type='file' width='30' name='cambioDeImg' > <br><br> <input name='enviaNuevaImg' type='submit' value='Cambiar Imagen' />";
} // Cierra isset($_REQUEST['cambiarimg'])
?>
</div>
</form>
<?php
if(isset($_REQUEST['subirimg'])){
// Aquí va la comprobación de la imagen
// Comprobación de la imagen.
if(!($_FILES['cambioDeImg']['type']=="image/jpeg" || $_FILES['cambioDeImg']['type']=="image/pjpeg" || $_FILES['cambioDeImg']['type']=="image/gif" || $_FILES['cambioDeImg']['type']=="image/png")){
echo "<div class='divNew alerta'><span class='alertaTexto alertaTextoRoja'>El tipo de imagen que intentas subir <b>no está permitido</b>. <a href='javascript:history.back(1)'>Atrás</a></span></div>";
exit();
}
# Extensión de los archivos.
echo "<h1>".$_FILES['enviaNuevaImg']['type']."</h1>";
if($_FILES['cambioDeImg']['type']=="image/jpeg" OR $_FILES['cambioDeImg']['type']=="image/pjpeg"){
$extension = ".jpg";
}
if($_FILES['cambioDeImg']['type']=="image/gif"){
$extension = ".gif";
}
if($_FILES['cambioDeImg']['type']=="image/png"){
$extension = ".png";
}
# Nombre de la foto
$nombre_foto = $_FILES['cambioDeImg']['name'];
# En linux dar permiso a la carpeta UPLOADS.
# De lo contrario no se podrá subir la imagen.
$destino = "../wp-content/plugins/wp-listas/uploads/";
if(move_uploaded_file($_FILES['cambioDeImg']['tmp_name'], "../wp-content/plugins/wp-listas/upload/".$nombre_foto)){
$URLimagen = $_SERVER['SERVER_NAME']."/wp-content/plugins/wp-listas/upload/".$nombre_foto;
#echo "<img src='../wp-content/plugins/wp-listas/upload/".$nombre_foto."' width='200px' alt='foto' >";
//echo $URLimagen."<br>";
}
// Fin comprobación imagen
# Query para actualizar
$IDunicaIMG = $_REQUEST['cambiarimg'];
$sql = "UPDATE wp_lista SET lista_image='$URLimagen' WHERE lista_id='$IDunicaIMG'";
if($wpdb->query($sql)){
echo "<h2>Hecho</h2>";
}else{
echo "<h2>Mal</h2>";
}
}
} // Cierra $_REQUEST['editarlista']==2
Ya me duele la cabeza y no consigo lograr subir una imagen. Lo más raro es que tengo otra sección casi igual (salvo por algún campo) y si me las sube sin ningún problema :S No entiendo ..
Gracias de antemano =) !
Un saludo !