Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    10

    Problemi upload immagini

    Salve,
    scusatemi. magari vi farò delle domande banali. Ma sono disperata. Sono neofita nella programmazione. Sto cercando di fare un codice che mi premette di uplodare le immagini sul server. ho trovato degli codici (sono su questo indirizzo: http://www.tagtagweb.com/index.php?o...d=86&Itemid=37).
    Ho inserito i miei dati nel codice ma purtroppo mi da: "Access denied for user 'apache'@'localhost' (using password: NO)".
    Cosa significa? Aiutatemi. Grazie mille.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    Ciao Ascolà

    Significa che devi aver impostato una coppia username e password con la quale accedere al DB che stai usando.

    In genere, nelle versioni di MySql installate in locale ottieni pieni permessi con lo username "root" e nessuna pwd.

    Questo vuol dire che nel file config.inc.php devi riportare quella coppia di valori che ti permetteranno di eseguire delle operazioni nelle tabelle di quel db.

    Codice PHP:
    <?php
    $username 
    "root"// nome utente del vostro database (di solito è 'root')
    $password ""// password del vostro database (di solito è '')
    $database "IlNomeDelTuoDataBase"// nome del database che avete creato
    $server "localhost";  // nome del server (di solito è 'localhost')
    mysql_connect($server$username$password) or die(mysql_error());
    mysql_select_db($database) or die(mysql_error());
    ?>
    Ora, se hai creato un tuo utente per l'accesso al db, devi mettere i valori da te scelti.

    Codice PHP:
    <?php
    $username 
    "UserNameScelto"// nome utente del vostro database (di solito è 'root')
    $password "TuaPassword"// password del vostro database (di solito è '')
    $database "IlNomeDelTuoDataBase"// nome del database che avete creato
    $server "localhost";  // nome del server (di solito è 'localhost')
    mysql_connect($server$username$password) or die(mysql_error());
    mysql_select_db($database) or die(mysql_error());
    ?>
    In ultimo, nelle versioni precedenti la 5.0 di MySql (non ricordo di preciso fino a quale), una volta creato l'utente devi riavviare il DBMS
    Conosci te stesso(?)
    (..e allora perchè scassi a me? )

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    10

    Ciao Macerata

    ho fatto tutto ma il problema è che alla fine quando provo a caricare l'immagine, mi da errore
    "Si sono verificati errori durante il caricamento dell'immagine". Mi sa che c'è qualche errore nel codice, oppure sono io che non ci capisco un tuobo Cmq nel secondo file che è uploadimage.php non ho cambiato nulla. Allora non capisco dov'è il pèroblema. Uffa....mi sto disperando.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    Quindi il problema col db l'abbiamo risolto suppongo...

    Ora immagino si fermi qui

    Codice PHP:
    if(!is_uploaded_file($_FILES['immagine']['tmp_name']))    {        
     
    $errors[] = 'Si sono verificati errori durante l\\'upload.';    

    Prova a modificarlo così e dimmi quale codice riporta (un numero da 0 a 6)

    Codice PHP:
    if(!is_uploaded_file($_FILES['immagine']['tmp_name']))    {        
     
    $errors[] = 'Si sono verificati errori durante l\\'upload (Codice'.$_FILES['immagine']['error'].')';    

    E comunque ti suggerisco di usare questa:

    move_uploaded_file()
    Conosci te stesso(?)
    (..e allora perchè scassi a me? )

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    10
    ho provato ad inserire questo codice. Ho l'apice prima della parola upload (l'upload) perchè nn funzionava. Cmq nn mi dà nessun codice. Mi dice sempre "Si sono verificati errori durante il caricamento dell'immagine" e basta. Booh Cmq posso provare ad usare anche la funzione che mi hai detto tu. Però non so da dove cominciare. Siccome è da poco che faccio queste cose, ancora sono inesperta.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    Probabilmente l'errore non si verifica dove ti ho indicato io, pensavo avessi "personalizzato" il codice di errore.

    Modifica il codice così e fammi sapere cosa stampa.

    Codice PHP:
    //[...]
    elseif(isset($_POST['upload'])){    
    print_r($_FILES);
    exit();
     
    //[...]
    }    
    //[...] 
    Conosci te stesso(?)
    (..e allora perchè scassi a me? )

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    Scusa, ho visto ora dov'era il messaggio d'errore, m'era proprio sfuggito :\

    Codice PHP:
    $urlimmagine $directorytime() . '_' $_FILES['immagine']['name'];
     
    //inserisco l'immagine nella directory e se tutto va bene nel database
     
    if(copy($_FILES['immagine']['tmp_name'], $urlimmagine)) { 
       
    mysql_query("INSERT INTO immagini (nomeimmagine, urlimmagine) VALUES ('$nomeimmagine', '$urlimmagine')");                
       echo 
    'L\\'immagine è stata caricata con successo. [url="' . $urlimmagine . '"]Clicca qui per vedere l\\'immagine[/url].'; }        
     else 
       echo 
    'Si sono verificati errori durante il caricamento dell\\'immagine.'; 
    hai creato la cartella "images" nella cartella dove risiede lo script? Insomma la cartella riportata nella variabile $directory
    Conosci te stesso(?)
    (..e allora perchè scassi a me? )

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    10
    mi da questo:
    Array ( [immagine] => Array ( [name] => images.jpg [type] => image/jpeg [tmp_name] => /var/www/html/tmp_upload/phpXrrrkv [error] => 0 [size] => 3872 ) )

    Spero di avere inserito tutto bene.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    Si quello va bene, vuol dire che il file è stato caricato correttamente, il problema sta nel copiarlo nella cartella images.

    L'hai creata?

    poi stampati anche $urlimmagine subito dopo averla creata.

    Per ultimo ho modificato il file e l'ho provato un po' di corsa ma sembra funzionare


    Codice PHP:
    <?php

    require_once("config.php"); 

    $directory "images/";
    // inseriamo le dimensioni massime consentite per l'upload
    // massimo peso
    $max_file_size 10240;
    // massima larghezza
    $max_width 300;
    // altezza massima
    $max_height 100;
    //La parte seguente di codice verifica se esiste il valore "upload" in POST
    //In caso contrario viene visualizzato il form per l'upload dell'immagine

    $upl_errors = array("Nessun errore"
                        
    "Il file inviato eccede le dimensioni specificate nel parametro upload_max_filesize di php.ini.",
                        
    "Il file inviato eccede le dimensioni specificate nel parametro MAX_FILE_SIZE del form.",
                        
    "Upload eseguito parzialmente.",
                        
    "Nessun file è stato inviato.",
                        
    "Undefined",
                        
    "Mancanza della cartella temporanea.");
                        


    if(!isset(
    $_POST['upload']))
    {    
        echo 
    "<form action='uploadimage.php' method='post' enctype='multipart/form-data'>    
        Nome Immagine:    
        
        <input type='text' name='nomeimmagine' />    
        
        Inserisci file:    
        
        <input type='file' name='immagine' />    
        
        <input type='submit' name='upload' value='Carica Immagine' /></form>    "
    ;

    // enctype='multipart/form-data' all'interno del tag form è fondamentale per l'upload dell'immagine

    elseif(isset($_POST['upload']))
    {    
        
    // prendo il timestamp per dare un nome casuale al file dell'immagine
        
    $timestamp time();    
        
    $nomeimmagine mysql_real_escape_string($_POST['nomeimmagine']);  
        
    $dimensioni getimagesize($_FILES['immagine']['tmp_name']);    
        
    $larghezza $dimensioni[0];  
        
    $altezza $dimensioni[1];   
        
        
    //costruisco l'array degli errori
        
    $errors = array(); 
        
        if( 
    $_FILES['immagine']['error'] == )
        {
            if(empty(
    $nomeimmagine) || empty($dimensioni))    
            {        
                
    $errors[] = "Non hai inserito un nome all'immagine.";
            }    
            
            if(empty(
    $_FILES['immagine']['name']))    
            {        
                
    $errors[] = "Non hai inserito l'immagine per il caricamento";    
            }   
              
            if(
    $_FILES['immagine']['size'] > $max_file_size)    
            {        
                
    $errors[] = "Immagine troppo pesante la dimensiome massima consentita è: [b]" $max_file_size "[/b] bytes.";    
            }
            
            
    // Verifico se l'immagine è di tipo jpeg o gif
            
    $type=$_FILES['immagine']['type'];
            
            if(
    $type != "image/gif" && $type != "image/pjpeg" && $type != "image/jpeg")    
            {        
                
    $errors[] = "L'immagine deve essere del formato JPEG o GIF.";    
            } 
            
            
    // controllo le dimensioni dell'immagine   
            
    if($altezza $max_width)    
            {        
                
    $errors[] = "L'altezza della tua immagine è troppo grande";    
            }   
             
            if(
    $larghezza $max_width)    
            {        
                
    $errors[] = "La tua immagine è troppo larga.";    
            }   
            
            
    // Se ci sono stampo gli errori
            
    if(count($errors) > 0)    
            {        
                echo 
    '[b]ERRORS:[/b]
    '
    ;   
                     
                foreach(
    $errors as $err)        
                {            
                    echo 
    $err '
    '
    ;        
                }    
            }   
            
    //altrimenti effettuo l'upload
            
    else    
            {       
                
    $urlimmagine $directorytime() . '_' $_FILES['immagine']['name'];
                
    //inserisco l'immagine nella directory e se tutto va bene nel database
                
                
    if(move_uploaded_file($_FILES['immagine']['tmp_name'],  $urlimmagine))
                { 
                    
    mysql_query("INSERT INTO immagini (nomeimmagine, urlimmagine) VALUES ('$nomeimmagine', '$urlimmagine')");                
                    echo 
    "L'immagine è stata caricata con successo. [url='".$urlimmagine."']Clicca qui per vedere l'immagine[/url]."
                }        
                else 
                    echo 
    "Si sono verificati errori durante il caricamento dell'immagine.";        
            }
        }
        else
            echo 
    "Si è verificato il seguente errore:
    [b]"
    .$upl_errors[$_FILES['immagine']['error']]."[/b]";

    ?>
    Conosci te stesso(?)
    (..e allora perchè scassi a me? )

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.