Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Caricare file su database

    Buongiorno, è la prima volta che mi trovo a dover caricare dei file su un database. Ho letto 2 guide ma nessuna sembra funzionare (o più probabilmente sono io che sbaglio), così provo a chiedere aiuto.

    Faccio una breve descrizione dell'algoritmo che ho usato: tramite un form seleziono il file da trasferire, all'invio dei dati controllo che sia stato caricato un file, che gli errori siano zero, ecc, ma mi risultano 2 errori:

    Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty in C:\Users\AleVale94\Desktop\xampp\htdocs\sito\new_p hoto.php on line 34
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',"")' at line 1

    Il codice è questo:
    codice:
    <div id="contents">
    <?php
       if (isset($_POST['submit']) && trim($_POST['submit'])=='Upload')
       { 
          if ($_FILES['file']['error'] != UPLOAD_ERR_OK) 
          { 
             echo "errore"; 
          } 
    
          include 'objects/mysql_functions.php'; 
          $data = new MySQLclass(); 
          $data -> connect();
    
          $name_tmp = $_FILES['file']['tmp_name']; 
          $name = $_FILES['file']['name'];
          $type = $_FILES['file']['type']; 
          $dates = file_get_contents($name_tmp); 
          $dates = addslashes($dates); 
    
          $t = 'foto'; 
          $v = array(date("Y-m-d H:i:s"), date("D, d M Y \a\l\l\e H:i:s"), $name, $type, $dates);
          $r = 'datetime, date, name, type, dates'; 
          $data -> insert($t, $v, $r);
       } 
    ?> 
    <h1>Seleziona la foto da caricare</h1> 
    <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post"> 
       <input class="title_photo" name="title" type="text" />
     
       <input class="file" name="file" type="file" />
     
       <input class="desc" name="desc" type="text" />
     
       <input class="button" name="submit" type="submit" value="Upload" />
     
    </form> 
    <p class="max_size">Dimensione massima del file: xxx byte.</p> 
    <p class="warning">ATTENZIONE: le foto saranno controllate prima di essere approvate.</p> 
    <?php 
       if (isset($_POST['submit']) && trim($_POST['submit']=='Upload')) 
       { 
          if (strlen($title_photo)=="0") 
          { 
             echo ('<p class="err">Non hai selezionato alcun titolo.</p>');
          } 
          if (!isset($file)) 
          { 
             echo ('<p class="err">Non hai selezionato alcun file.</p>'); 
          }
       } 
    ?> 
    </div>
    Cosa ho sbagliato?

  2. #2
    Non c'è nessuno in grado di aiutarmi?

  3. #3
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    il primo errore ti dice che non hai messo un parametro valido (diverso da vuoto) in file_get_contents
    fai un test mostrando a video il contenuto della variabile che usi come parametro ($name_tmp)

    il secondo errore ti dice che c'è un errore nella query, ma, dato che la query non è palese nel codice che hai messo, nessuno può dirti cosa e dove correggere

  4. #4
    L'errore di MySQL credo sia causato dal fatto che il programma non riesce ad inserire correttamente il file nel database, correggimi se sbaglio.

    Tuttavia non ho ancora capito a cos'è dovuto l'errore di caricamento... non dovrebbe segnarmi empty file, eppure ho fatto una prova come mi hai consigliato e effettivamente non stampa nulla!

  5. #5
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    dell'errore di MySQL ti posso solo dire l'ovvio, cioè che è un errore di sintassi...

    per il problema del caricamento del file, prova aggiungendo questo nel form
    enctype="multipart/form-data"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.