File input no sube los ficheros

Iniciado por bgnumis, 19 Diciembre 2017, 20:34 PM

0 Miembros y 1 Visitante están viendo este tema.

bgnumis

Hola tengo estos tres archivos: ad.php, upload.php, config.php y conexion2.php

Estoy intentando replicar un ejemplo para subir archivos a un servidor pero no me sale error pero tampoco ejecuta. ¿alguno puede ver  ayudarme a ver por qué puede ser?
En el htdocs del servidor van todos los archivos excepto upload.php que va en una carpeta que se llama php y hay otra carpeta en el htddocs que se llama files

config.php

Código (php) [Seleccionar]

$Usuario="userd"
$Password="clve"
$Servidor="mysql09.servidoresdedicados.com:9999"
$BaseDeDatos="bay_afd"
$usuarios_sesion="";
$sql_tabla="rutas";



Sé que está en mysql y no en mysqli (que cuando funcione lo migro)

conexion2.php


Código (php) [Seleccionar]




<?php

include_once("config.php")

$conexion2=mysql_connect($Servidor,$Usuario,$Password) or die ("Error al conectar en el servidor");
$descriptor=mysql_select_db($BaseDeDatos,$conexion2);
@
mysql_set_charset("utf8",$conexion2);



?>





ad.php

Código (php) [Seleccionar]


<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<?php

session_start
();
 
//Validar que el usuario este logueado y exista un UID
if ( ! ($_SESSION['autenticado'] == 'SI' && isset($_SESSION['uid'])) )
{
    
//En caso de que el usuario no este autenticado, crear un formulario y redireccionar a la 
    //pantalla de login, enviando un codigo de error        <form name="formulario" method="post" action="index.php">
?>

        <form name="formulario" method="post" action="index.php">
            <input type="hidden" name="msg_error" value="2">
        </form>
        <script type="text/javascript">
            document.formulario.submit();
        </script>

<?php
}
 
    
//Conectar BD
    
include("conectar_bd.php");  
    
conectar_bd();
 
    
//Sacar datos del usuario que ha iniciado sesion"Propietario/a de ".$fila['Direccion']." ".$fila['PuertaLocalGaraje']
    
$sql "SELECT   tx_nombre tx_TipoUsuario,id_usuario, tx_username, tx_password
            FROM tbl_users
            LEFT JOIN ctg_tiposusuario
            ON tbl_users.id_TipoUsuario = ctg_tiposusuario.id_TipoUsuario
            WHERE id_usuario = '"
.$_SESSION['uid']."'";         
    
$result     =mysql_query($sql); 
 
    
$nombreUsuario "";



 
    
//Formar el nombre completo del usuario
    
if( $fila mysql_fetch_array($result) ){

        
$nombreUsuario "".$fila['tx_nombre'];
}

 
//Cerrrar conexion a la BD <td width="86" height="58"><a href="principal.php" target="_parent"><button  style='width:100px; height:100px; cursor:pointer;' ><strong>Registro Visitas</strong></button> </a>  </td> 
//mysql_close($conexio);

?>






<!DOCTYPE html>
<html lang="en">

<head>
<title>Admi
</title>


    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">

 
    <title>Página Web exclusiva para clientes a</title>

    <!-- Bootstrap Core CSS -->
    <link href="css/bootstrap.min.css" rel="stylesheet">

    <!-- Custom CSS -->
    <link href="css/full-width-pics.css" rel="stylesheet">

    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
        <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
        <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
<script type="text/javascript">
    <!--
        $().ready(function() {
            $("#frmlogin").validate();
            $("#usuario").focus();
        });
    // -->
    </script>
</head>

<body>



    <!-- Navigation -->
    <nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
        <div class="container">
            <!-- Brand and toggle get grouped for better mobile display -->
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
               
           
                <a class="navbar-brand" href="principalcero.php" style="color:#FFF"> <?php setlocale(LC_ALL,"es_ES");
echo 
utf8_encode (strftime("%A %d de %B")); ?>
</a>
            </div>
            <!-- Collect the nav links, forms, and other content for toggling -->
            <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav navbar-right" >
                    <li>
                        <a href="politicaprivacidad.php" style="color:#FFF" >Política de Privacidad</a>
                    </li>
                    <li>
                        <a href="normasdeuso.php" style="color:#FFF">Normas de Uso</a>
                    </li>
                    <li>
                        <a href="contacto.php" style="color:#FFF">Contacto</a>
                    </li>
                      <li align="right">
                   
        <a href="cerrarSesion.php" style="color:#FFF">Cerrar Sesi&oacute;n &nbsp;</a>
 
            </li>
                </ul>
            </div>
            <!-- /.navbar-collapse -->
        </div>
</div>
        <!-- /.container -->
    </nav>

    <!-- Full Width Image Header with Logo -->
    <!-- Image backgrounds are set within the full-width-pics.css file. -->
    <header class="image-bg-fluid-height">
   
        <img class="img-responsive img-center" src="img/fesmc.png" style='width:100px; height:85px;' 
alt="">
       
       
    </header>

    <!-- Content Section -->
    <section style="background-color:#E6E6FA; ">
        <div class="container" style="background-color:#E6E6FA" margin: auto;>
            <div class="row">
              <div class="col-lg-12">
               
                  <h1 class="section-heading" 
                  >Menú Principal</h1>
                   <br>
                   </br>
               
         </div>
            </div>
        </div>

  <div class="container" margin: auto; >
     <div class="row"> 
         <div  class="col-lg-12 text-center">
       

<h3>Subir archivos con PHP</h3>

     <form name="upload" method="post" action="?"  enctype="multipart/form-data">


<div class="form-group">
    <input type="file" name="archivo" id="archivo" class="form-control" required/>
</div>

<legend></legend>

<input type="submit"  class="btn btn-primary center-block" name="subir" value="Subir" />
<br>
      </form>     

<?php

include_once("php/upload.php");

?>



   <br>
<br><br><br>

</br>
</br>
   </br>
</br>



</p>
   

    <!-- Footer -->
    <footer>
        <div class="container">
            <div class="row">
                <div class="col-lg-12">Siempre cerca de tí</div>
               
            <!-- /.row -->
        </div>
        </div>
       
   
     
     
     
    </footer>
</section>
    <!-- jQuery -->
    <script src="js/jquery.js"></script>

    <!-- Bootstrap Core javascript -->
    <script src="js/bootstrap.min.js"></script>

</body>

</html>





upload.php

Código (php) [Seleccionar]



<?php 

if(isset($_POST["subir"])   && empty($_POST["archivo"])){



    foreach (
$_FILES["archivo"] as $archivo => $valor) {
        
    }

    
$archivo=$_FILES["archivo"]["tmp_name"];
        
$destino="files/".$_FILES["archivo"]["name"];


if((
$_FILES["archivo"]["type"]=="image/jpeg") || $_FILES["archivo"]["type"]=="image/png") && $_FILES["archivo"]["size"]<="2097152"  )  ){ 

 include_once(
"conexion2.php"); 




//CÔPIAMOS EL ARCHIVO AL DIRECTORIO


move_uploaded_file($archivo$destino);

//insetamos en bd

$resul=@mysql_query("INSERT INTO `rutas`(`id`, `ruta`) VALUES (NULL,'$destino'); ") or die(mysql_error());

?>



<div class="alert alert-success form-group">

      <strong>Archivo subido correctamente</strong>

</div>

<?php


  
} else{

?>

<div class="alert alert-warning">

    <strong>solo se aceptan ficheros jpg o png con 2 mb máximo</strong>


    <?php

}





}

?>



engel lex

no hagas doble post

has chequeado que efectivamente llegue el archivo al servidor? (var_dump($_FILES))
el archivo no será muy grande? (limites según php.ini)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

bgnumis

#2
Hola sí no es el tamaño del fichero lo he probado con una miniatura. El anterior post que parece qje es dovle post era con otro código (y sabía mucho menos que ahora) disculpas.

A ver si podéis detectar algo raro en el Upload.php


He descubierto que me faltaban los ; en la conexion pero me da error al conectar en el servidor aunque estoy poniendo la clave bien...sigo. ayudaaa



· No hagas doble post
>aquí las reglas del foro
-Engel Lex

bgnumis

Hola amigos,

Nada que no lo consigo,

Trato de replicar esto que aparece en esta web y no lo consigo. Es noche buena lo sé, voy a empezar la cena, pero como no he pedido nada a Noel, a ver si alguno me puede ayudar y decirme si replica el ejemplo si le funciona ;-(

https://www.solvetic.com/tutoriales/article/1821-como-subir-archivos-a-un-servidor-web-con-php/