Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/09/2008, 07:58
Llaner
 
Fecha de Ingreso: septiembre-2008
Mensajes: 9
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Problema comprobando datos de un formulario

Ok gracias por el apunte, lo he modificado y ahora tanto en local como en el servidor me funciona igual pero sigue fallandome cuando pongo imagenes de mas de 300Kb es como si no me reconociera el tamaño ya que el error que me da no es de tamaño es como si no hubiera sibido la foto.
adjunto codigo modificado.
[
Código PHP:
<?php
if ($_POST["comment2"]!= "xxxxxxxxxxxxx") {
    
$seccion_contenido .= "$earth_submit_cb";
} else {
    if (
$_FILES['imagen']['name']!= "" AND $_FILES['imagen']['size']<300000){
        
//$ruta = $_SERVER["DOCUMENT_ROOT"];
        
$sql"SELECT MAX(earth_id) AS mid FROM laken_earth";
        
$resultado bd_consultar($sql$enlacebd);
        
$fila bd_llenar_array ($resultado);
        
$foto=$fila["mid"]+1;
        
$tipoarchivo=$_FILES['imagen']['type'];
        if (
strpos($tipoarchivo"gif")){
            
$foto=$foto.".gif";
        } elseif (
strpos($tipoarchivo"jpg")){
            
$foto=$foto.".jpg";
        } elseif (
strpos($tipoarchivo"jpeg")){
            
$foto=$foto.".jpeg";
        } elseif (
strpos($tipoarchivo"bmp")){
            
$foto=$foto.".bmp";
        } else {
            
$foto=$foto.substr($tipoarchivo,strlen($tipoarchivo)-3,3);
        }

        if (
is_uploaded_file($_FILES['imagen']['tmp_name']) AND move_uploaded_file($_FILES['imagen']['tmp_name'],"$ruta_ima/lakenonearth/$foto")){ 
            
chmod"$ruta_ima/lakenonearth/$foto"0644 );  
            
$seccion_contenido "$earth_submit_ok ".$_FILES['imagen']['name']." ("$_FILES['imagen']['size'] / 1000 ." bytes)";
            
$sql "INSERT INTO laken_earth (earth_image,earth_date,earth_comment,earth_location,earth_from,earth_email) VALUES('$foto','$date','$comment','$location','$from','$email')";
            if(
$resultado bd_consultar($sql$enlacebd)){
                
$seccion_contenido .= "<br> Imagen grabada correctamente";
            }else{
                
$seccion_contenido .= "<br>$earth_submit_insert";
            }
        }else{
        
//aqui es donde me llega (o donde se me queda) cuando subo imagenes de mas de 300Kb    
    
$seccion_contenido .= "$earth_submit_error"." ".$_FILES['imagen']['name'];
        }
    } else {
        if (
$_FILES['imagen']['size']>300000){
            
$seccion_contenido.="$earth_submit_maxsize "$_FILES['imagen']['size']/1000;
        } else {
            
$seccion_contenido .= "$earth_submit_eblank";    
            
$seccion_contenido .= $_FILES['imagen']['size'];
        }
    }
}
$go_back .= '<a href="javascript:history.back()" class="earth">'.$earth_submit_back.'</a>';
$seccion_cuerpo "$ruta_tpl/earth_upload.html";
?>
He estado haciendo pruebas, y si el fichero es de menos de 300Kg si me reconoce el tipo y el tamaño, pero si el fichero es superior no me reconoce ni el tipo ni el tamaño(en disco se supone) e cogido una imagen de 704Kb y no me la reconoce, la reduzco a 94Kb y perfecto, con este codigo de prueba que he hecho mas pequeño, porque pasa esto.
Código PHP:
<?php
if ($_POST["comment2"]!= "xxxxxxxxxxxxx") {
    
$seccion_contenido .= "$earth_submit_cb";
} else {
    if (
$_FILES['imagen']['name']!= ""){
        
//$ruta = $_SERVER["DOCUMENT_ROOT"];
        
$sql"SELECT MAX(earth_id) AS mid FROM laken_earth";
        
$resultado bd_consultar($sql$enlacebd);
        
$fila bd_llenar_array ($resultado);
        
$foto=$fila["mid"]+1;
        
$tipoarchivo=$_FILES['imagen']['type'];
        if (
strpos($tipoarchivo"gif")){
            
$foto=$foto.".gif";
        } elseif (
strpos($tipoarchivo"jpg")){
            
$foto=$foto.".jpg";
        } elseif (
strpos($tipoarchivo"jpeg")){
            
$foto=$foto.".jpeg";
        } elseif (
strpos($tipoarchivo"bmp")){
            
$foto=$foto.".bmp";
        } else {
            
$foto=$foto.substr($tipoarchivo,strlen($tipoarchivo)-3,3);
        }
        
$seccion_contenido.="$earth_submit_maxsize 2.."$_FILES['imagen']['size']/1000;
        
$seccion_contenido.=$foto;
    } else {
    
    }

}
$go_back .= '<a href="javascript:history.back()" class="earth">'.$earth_submit_back.'</a>';
$seccion_cuerpo "$ruta_tpl/earth_upload.html";
?>
Ya esta solucionado, porfin es que estaba bloqueado el tamaño en el formulario joer lo que me ha costado. muchas gracias de todas formas.

Última edición por Llaner; 16/09/2008 a las 10:59