upload immagini multiplo

Salve a tutti!

Spero di non fare una domanda sciocca: si può fare così? (notare variabile $_FILE)

         <?php
                $contImmagini=0;
      for($i=0; $i<20; $i++){
         if(is_uploaded_file($_FILES[$nomeFile[$i]]['tmp_name'])){
            $contImmagini++;   
            if($r[1]== 'eventoA'){
               // Sposto il file nella cartella da me desiderata
               @move_uploaded_file($_FILES[$nomeFile[$i]]['tmp_name'], '../../images/eventi/interni/'.$_FILES[$nomeFile[$i]]['name']);
            }
            else{
               @move_uploaded_file($_FILES[$nomeFile[$i]]['tmp_name'], '../../images/eventi/esterni/'.$_FILES[$nomeFile[$i]]['name']);
            };
         };
      };
        ?>

Grazie in anticipo!

inviato 5 anni fa
Schiappa
X 0 X

Scusate, mi ero dimenticato che prima c'era questo:

<?php
$nomeFile=array('immagine', 'immagine2', 'immagine3', 'immagine4', 'immagine5', 'immagine6', 'immagine7', 'immagine8', 'immagine9', 'immagine10', 'immagine11', 'immagine12', 'immagine13', 'immagine14', 'immagine15', 'immagine16', 'immagine17', 'immagine18', 'immagine19', 'immagine20' );
?>
risposto 5 anni fa
Schiappa
X 0 X

Ok, funziona!

Scusate se non ho testato prima, ma pensavo non funzionasse, devo fare un lavoro abbastanza in fretta e ho chiesto a voi per poi arrivare, nel caso (che non si è verificato), ad una soluzione alternativa con il vostro aiuto!

Scusate ancora

ciao

risposto 5 anni fa
Schiappa
X 0 X

Per quel che vale la mia risposta: avrei fatto anch'io la stessa cosa, in pratica, se non potevo usare un framework di sviluppo.

Ciao

risposto 5 anni fa
Mario Santagiuliana
X 0 X

Domanda per Mario: secondo te è diventato obsoleto utilizzare script propri? Sarebbe più opportuno e sicuro appoggiarsi a qualche cms? Premetto che non nutro molta simpatia per quest'ultima soluzione, ma ultimamente cercano in molti di spronarmi ad utilizzarli.... son veloci da usare, sicuri, testati..... però mi fanno sentire un po' poco padrone dall'ambiente in cui lavoro. Senza contare il fatto che sono, come descritto nel nick, una schiappa e quindi un po' di programmazione né mi farebbe male, né mi dispiacerebbe realizzare (mi piace programmare).

Scusa per la domanda, forse sciocca!

risposto 5 anni fa
Schiappa
X 0 X

Il framework è una cosa differente da un CMS. Un CMS può avere all'interno di se anche un framework per poter sviluppare, ad esempio, i suoi plugin.

Non è obsoleto creare file propri secondo me. Dipende da quello che vuoi fare e quanto ci devi lavorare.

I framework ti permettono di creare un codice "standard" con funzioni già create e pronte all'uso, testate e che fanno bene o male tutto quello di cui si può avere bisogno per creare una applicazione web. Prendi ad esempio la creazione di un form html e la verifica dei campi di input. Con un framework la cosa diventa spesso facilissima e si ha la sicurezza di creare facilmente e senza perdere tempo tutti i controlli del caso. Fare da se invece può diventare un lavoro lungo, laborioso e pieno di errori.

Il CMS invece è un'altra cosa. E' un Content Management System. Ce ne sono a bizzeffe, anche opensource che secondo me sono i migliori. Ti permettono di creare in poco tempo un sito web funzionante senza perderci troppo tempo nella sua programmazione. Se il CMS è conosciuto, se c'è una comunità di sviluppatori che lo mantiene, sicuramente un CMS può rivelarsi un'ottima scelta anche in termini di sicurezza. Più che avere un sito web creato da se, con o senza framework, che cerchi di fare le stesse cose del CMS già presente.

Insomma, il tutto è in dipendenza da ciò che si vuole creare e di ciò che si ha bisogno.

Ciao

P.S. non rivolgerti solo a me per le domande, esistono tanti altri utenti che sanno rispondere molto meglio del sottoscritto :)

 :bye:

risposto 5 anni fa
Mario Santagiuliana
X 0 X

Grazie per la risposta.

Comunque ho un problemino: lo script che ho postato non mi carica le immagini....

I permessi delle cartelle sono ok (ne sono certo) e tra l'altro non mi carica neanche l'immagine di questo script (presente nella solita pagina):

<?php
                if(is_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'])){
         @move_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'], '../../images/eventi/interni/menu/'.$_FILES['immagineInMacelleria']['name']);
         $nome=$_FILES['immagineInMacelleria']['name'];
         $query="INSERT INTO `foto` ( `idEvento` , `nome` ) VALUES ( '$idEvento' , '$nome' )";      
         $result = mysql_query($query,$db);   
      };
?>

Faccio notare che la query me la esegue correttamente....mi ci sto friggendo un po' il cervello...

Chiedo scusa comunque se mi sono rivolto direttamente a Mario per una domanda: è infatti un controsenso fare ciò all'interno di un forum, ma avevo avviato un discorso e mi è venuto automatico.

Ringrazio in anticipo qualsiasi utente mi risponda!

risposto 5 anni fa
Schiappa
X 0 X

Non ci sono particolari errori del php che possono aiutare? Hai già controllato i log di apache?

risposto 5 anni fa
Mario Santagiuliana
X 0 X

Penso che l'errore si a qui, ovvero nella pagina dove prendo le informazioni con la form.

Per ora non sto' a postarvela tutta.....penso che l'errore sia proprio qui:

<script type="text/javascript">
   var contFoto=1;
   var contDescrizione=1;
   function photos(source) {
     if(contFoto < 20){
      contFoto=contFoto+1;
      contDescrizione=contDescrizione+1;
      
      source.onchange = null;
      var inputFoto = document.createElement('input');
      inputFoto.type = 'file';
      var inputDescrizione = document.createElement('input');
      inputDescrizione.type = 'text';
      
      immagine=new Array("immagine2", "immagine3", "immagine4", "immagine5", "immagine6", "immagine7", "immagine8", "immagine9", "immagine10", "immagine11", "immagine12", "immagine13", "immagine14", "immagine15", "immagine16", "immagine17", "immagine18", "immagine19", "immagine20");
      descrizione=new Array("descrizioneImg2", "descrizioneImg3", "descrizioneImg4", "descrizioneImg5", "descrizioneImg6", "descrizioneImg7", "descrizioneImg8", "descrizioneImg9", "descrizioneImg10", "descrizioneImg11", "descrizioneImg12", "descrizioneImg13", "descrizioneImg14", "descrizioneImg15", "descrizioneImg16", "descrizioneImg17", "descrizioneImg18", "descrizioneImg19", "descrizioneImg20");
      for(i=0; i<19; i++){
         if(contFoto == i+2){
            inputFoto.name = immagine[i];
         }
         if(contDescrizione == i+2){
            inputDescrizione.name = descrizione[i];
         }
      }
      inputFoto.onchange = photos;
      
      var br = document.createElement('br');
      var files = document.getElementById('files');
      files.appendChild(inputFoto);
      files.appendChild(br);
      
      var Descrizione = document.getElementById('Descrizione');
      Descrizione.appendChild(br);
      Descrizione.appendChild(inputDescrizione);
      
     }
     
   }
</script>

 Quando richiamo la pagina per elaborare la form(ovvero quella specificata nell' "action", che appunto vi ho illustrato nei post precedenti), come già detto, mi esegue le query correttamente, però mi da' queste notifiche:

Notice: Undefined index: immagine2 in XXX/XX/X/file.php on line 116

Notice: Undefined index: immagine3 in XXX/XX/X/file.php on line 116

                                        ............(fino a)

Notice: Undefined index: immagine20 in XXX/XX/X/file.php on line 116

Io penso di non nominare bene i campi di input generati in javascript...

risposto 5 anni fa
Schiappa
modificato 5 anni fa
X 0 X

La fregatura è che non mi carica neanche questa immagine:

<?php
                //Inserisco l'immagine dellevento in macelleria (se c'è)
      if(is_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'])){
         @move_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'], '../../images/eventi/interni/menu/'.$_FILES['immagineInMacelleria']['name']);
         $nome=$_FILES['immagineInMacelleria']['name'];
         $query="INSERT INTO `foto` ( `idEvento` , `nome` ) VALUES ( '$idEvento' , '$nome' )";      
         $result = mysql_query($query,$db);   
      };
?>

Inoltre i messaggi di notice che vi ho postato, penso siano normali in quanto vengono generati dalle immagini che non vengono caricate: infatti se posto 2 immagini i messaggi di notifica partono da "immagine3" (per intendersi, vedi post precedente), se per esempio ne posto 5 i messaggi partono da "immagine6" ....

risposto 5 anni fa
Schiappa
X 0 X

Fa un var_dump dell'array $FILES.

Fa un debug del tuo codice riga per riga con xdebug, o con il client che hai configurato e che preferisci.

risposto 5 anni fa
Mario Santagiuliana
X 0 X

questo è il risultato del var_dump:

array(5) { ["name"]=> string(10) "slide1.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(32) "/home/www/web72/phptmp/php2N7Tyz" ["error"]=> int(0) ["size"]=> int(125519) }

Ovviamente è similare per le altre immagini.

risposto 5 anni fa
Schiappa
X 0 X

In quanto al debug, sono sicuro che nell'if, dove è contenuta l'istruzione che sposta l'immagine dove voglio, c'entra: infatti esegue correttamente la query al suo interno...

risposto 5 anni fa
Schiappa
X 0 X

Vi posto il risultato di phpinfo(non proprio tutto).... non so più dove battere la testa....

Immagine lista

array(5) { ["name"]=> string(17) "eventi_gelato.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(32) "/home/www/web72/phptmp/phpGLRZcc" ["error"]=> int(0) ["size"]=> int(21773) }

PHP Logo

PHP Version 5.2.1

System    Linux host198-196-149-62.serverdedicati.aruba.it 2.6.20-15-server #2 SMP Sun Apr 15 07:41:34 UTC 2007 i686

Build Date    Apr 26 2007 15:16:11

Server API    Apache 2.0 Handler

Virtual Directory Support    disabled

Configuration File (php.ini) Path    /etc/php5/apache2/php.ini

Scan this dir for additional .ini files    /etc/php5/apache2/conf.d

additional .ini files parsed    /etc/php5/apache2/conf.d/curl.ini, /etc/php5/apache2/conf.d/gd.ini, /etc/php5/apache2/conf.d/mhash.ini, /etc/php5/apache2/conf.d/ming.ini, /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/pdo.ini, /etc/php5/apache2/conf.d/pdo_mysql.ini, /etc/php5/apache2/conf.d/pdo_sqlite.ini, /etc/php5/apache2/conf.d/ps.ini, /etc/php5/apache2/conf.d/pspell.ini, /etc/php5/apache2/conf.d/recode.ini, /etc/php5/apache2/conf.d/snmp.ini, /etc/php5/apache2/conf.d/sqlite.ini, /etc/php5/apache2/conf.d/tidy.ini, /etc/php5/apache2/conf.d/xmlrpc.ini, /etc/php5/apache2/conf.d/xsl.ini

PHP API    20041225

PHP Extension    20060613

Zend Extension    220060519

Debug Build    no

Thread Safety    disabled

Zend Memory Manager    enabled

IPv6 Support    enabled

Registered PHP Streams    zip, php, file, data, http, ftp, compress.bzip2, compress.zlib, https, ftps

Registered Stream Socket Transports    tcp, udp, unix, udg, ssl, sslv3, sslv2, tls

Registered Stream Filters    string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.*

Zend logo This program makes use of the Zend Scripting Language Engine:

Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

PHP Credits

Configuration

PHP Core

Directive   Local Value   Master Value

allow_call_time_pass_reference   On   On

allow_url_fopen   On   On

allow_url_include   Off   Off

always_populate_raw_post_data   Off   Off

arg_separator.input   &   &

arg_separator.output   &   &

asp_tags   Off   Off

auto_append_file   no value   no value

auto_globals_jit   On   On

auto_prepend_file   no value   no value

browscap   no value   no value

default_charset   no value   no value

default_mimetype   text/html   text/html

define_syslog_variables   Off   Off

disable_classes   no value   no value

disable_functions   no value   no value

display_errors   On   On

display_startup_errors   Off   Off

doc_root   no value   no value

docref_ext   no value   no value

docref_root   no value   no value

enable_dl   On   On

error_append_string   no value   no value

error_log   no value   no value

error_prepend_string   no value   no value

error_reporting   6143   6135

expose_php   On   On

extension_dir   /usr/lib/php5/20060613+lfs   /usr/lib/php5/20060613+lfs

file_uploads   On   On

highlight.bg   #FFFFFF   #FFFFFF

highlight.comment   #FF8000   #FF8000

highlight.default   #0000BB   #0000BB

highlight.html   #000000   #000000

highlight.keyword   #007700   #007700

highlight.string   #DD0000   #DD0000

html_errors   On   On

ignore_repeated_errors   Off   Off

ignore_repeated_source   Off   Off

ignore_user_abort   Off   Off

implicit_flush   Off   Off

include_path   .:/usr/share/php:/usr/share/pear   .:/usr/share/php:/usr/share/pear

log_errors   On   Off

log_errors_max_len   1024   1024

magic_quotes_gpc   On   On

magic_quotes_runtime   Off   Off

magic_quotes_sybase   Off   Off

mail.force_extra_parameters   no value   no value

max_execution_time   30   30

max_input_time   60   60

memory_limit   128M   128M

open_basedir   /home/www/web72/   no value

output_buffering   no value   no value

output_handler   no value   no value

post_max_size   8M   8M

precision   12   12

realpath_cache_size   16K   16K

realpath_cache_ttl   120   120

register_argc_argv   On   On

register_globals   Off   Off

register_long_arrays   On   On

report_memleaks   On   On

report_zend_debug   On   On

safe_mode   On   Off

safe_mode_exec_dir   no value   no value

safe_mode_gid   Off   Off

safe_mode_include_dir   no value   no value

sendmail_from   no value   no value

sendmail_path   /usr/sbin/sendmail -t -i    /usr/sbin/sendmail -t -i

serialize_precision   100   100

short_open_tag   On   On

SMTP   localhost   localhost

smtp_port   25   25

sql.safe_mode   Off   Off

track_errors   Off   Off

unserialize_callback_func   no value   no value

upload_max_filesize   15M   15M

upload_tmp_dir   /home/www/web72/phptmp/   no value

user_dir   no value   no value

variables_order   EGPCS   EGPCS

xmlrpc_error_number   0   0

xmlrpc_errors   Off   Off

y2k_compliance   On   On

zend.ze1_compatibility_mode   Off   Off

apache2handler

Apache Version    Apache

Apache API Version    20051115

Server Administrator    webmaster@sergiofalaschi.it

Hostname:Port    www.sergiofalaschi.it:80

User/Group    www-data(33)/33

Max Requests    Per Child: 0 - Keep Alive: on - Max Per Connection: 200

Timeouts    Connection: 300 - Keep-Alive: 15

Virtual Server    Yes

Server Root    /etc/apache2

Loaded Modules    core mod_log_config mod_logio prefork http_core mod_so mod_alias mod_auth_basic mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_dir mod_env mod_include mod_mime mod_negotiation mod_php5 mod_rewrite mod_setenvif mod_ssl mod_status mod_suexec mod_jk

Directive   Local Value   Master Value

engine   1   1

last_modified   0   0

xbithack   0   0

Apache Environment

Variable   Value

HTTP_HOST    www.sergiofalaschi.it

HTTP_USER_AGENT    Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17 ( .NET CLR 3.5.30729; .NET4.0E)

HTTP_ACCEPT    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

HTTP_ACCEPT_LANGUAGE    it

HTTP_ACCEPT_ENCODING    gzip,deflate

HTTP_ACCEPT_CHARSET    ISO-8859-1,utf-8;q=0.7,*;q=0.7

HTTP_KEEP_ALIVE    115

HTTP_CONNECTION    keep-alive

HTTP_REFERER    http://www.sergiofalaschi.it/shop/admin/inserisci-evento.php

HTTP_COOKIE    PHPSESSID=8487184f46034121ae5b58e65a40bca2

CONTENT_TYPE    multipart/form-data; boundary=---------------------------18598284582661

CONTENT_LENGTH    23500

PATH    /usr/local/bin:/usr/bin:/bin

SERVER_SIGNATURE    no value

SERVER_SOFTWARE    Apache

SERVER_NAME    www.sergiofalaschi.it

SERVER_ADDR    62.149.196.198

SERVER_PORT    80

REMOTE_ADDR    62.211.216.164

DOCUMENT_ROOT    /home/www/web72/web

SERVER_ADMIN    webmaster@sergiofalaschi.it

SCRIPT_FILENAME    /home/www/web72/web/shop/admin/Server/inserimento-evento.php

REMOTE_PORT    2285

GATEWAY_INTERFACE    CGI/1.1

SERVER_PROTOCOL    HTTP/1.1

REQUEST_METHOD    POST

QUERY_STRING    no value

REQUEST_URI    /shop/admin/Server/inserimento-evento.php

SCRIPT_NAME    /shop/admin/Server/inserimento-evento.php

HTTP Headers Information

HTTP Request Headers

HTTP Request    POST /shop/admin/Server/inserimento-evento.php HTTP/1.1

Host    www.sergiofalaschi.it

User-Agent    Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17 ( .NET CLR 3.5.30729; .NET4.0E)

Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language    it

Accept-Encoding    gzip,deflate

Accept-Charset    ISO-8859-1,utf-8;q=0.7,*;q=0.7

Keep-Alive    115

Connection    keep-alive

Referer    http://www.sergiofalaschi.it/shop/admin/inserisci-evento.php

Cookie    PHPSESSID=8487184f46034121ae5b58e65a40bca2

Content-Type    multipart/form-data; boundary=---------------------------18598284582661

Content-Length    23500

HTTP Response Headers

X-Powered-By    PHP/5.2.1

Expires    Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control    no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma    no-cache

bcmath

BCMath support    enabled

bz2

BZip2 Support    Enabled

Stream Wrapper support    compress.bz2://

Stream Filter support    bzip2.decompress, bzip2.compress

BZip2 Version    1.0.3, 15-Feb-2005

calendar

Calendar support    enabled

ctype

ctype functions    enabled

curl

cURL support    enabled

cURL Information    libcurl/7.15.5 OpenSSL/0.9.8c zlib/1.2.3 libidn/0.6.5

date

date/time support    enabled

Timezone Database Version    2006.16

Timezone Database    internal

Default timezone    Europe/Berlin

Directive   Local Value   Master Value

date.default_latitude   31.7667   31.7667

date.default_longitude   35.2333   35.2333

date.sunrise_zenith   90.583333   90.583333

date.sunset_zenith   90.583333   90.583333

date.timezone   no value   no value

dba

DBA support    enabled

Supported handlers    db4

dom

DOM/XML    enabled

DOM/XML API Version    20031129

libxml Version    2.6.27

HTML Support    enabled

XPath Support    enabled

XPointer Support    enabled

Schema Support    enabled

RelaxNG Support    enabled

exif

EXIF Support    enabled

EXIF Version    1.4 $Id: exif.c,v 1.173.2.5.2.11 2007/01/23 00:23:17 iliaa Exp $

Supported EXIF Version    0220

Supported filetypes    JPEG,TIFF

filter

Input Validation and Filtering    enabled

Revision    $Revision: 1.52.2.38 $

Directive   Local Value   Master Value

filter.default   unsafe_raw   unsafe_raw

filter.default_flags   no value   no value

ftp

FTP support    enabled

gd

GD Support    enabled

GD Version    2.0 or higher

FreeType Support    enabled

FreeType Linkage    with freetype

FreeType Version    2.2.1

T1Lib Support    enabled

GIF Read Support    enabled

GIF Create Support    enabled

JPG Support    enabled

PNG Support    enabled

WBMP Support    enabled

gettext

GetText Support    enabled

hash

hash support    enabled

Hashing Engines    md2 md4 md5 sha1 sha256 sha384 sha512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru gost adler32 crc32 crc32b haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

iconv

iconv support    enabled

iconv implementation    glibc

iconv library version    2.5

Directive   Local Value   Master Value

iconv.input_encoding   ISO-8859-1   ISO-8859-1

iconv.internal_encoding   ISO-8859-1   ISO-8859-1

iconv.output_encoding   ISO-8859-1   ISO-8859-1

imagick

ImageMagick support   enabled

Magick Backend    ImageMagick

ImageMagick version    6.2.4

PHP imagick version    0.9.11

MaxRGB    65535

Supported image formats    8BIM

Font Family - Name    AvantGarde - AvantGarde-Book

imap

IMAP c-Client Version    2001

SSL Support    enabled

Kerberos Support    enabled

json

json support    enabled

json version    1.2.1

libxml

libXML support    active

libXML Version    2.6.27

libXML streams    enabled

mbstring

Multibyte Support    enabled

Multibyte string engine    libmbfl

Multibyte (japanese) regex support    enabled

Multibyte regex (oniguruma) version    4.4.4

Multibyte regex (oniguruma) backtrack check    On

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Directive   Local Value   Master Value

mbstring.detect_order   no value   no value

mbstring.encoding_translation   Off   Off

mbstring.func_overload   0   0

mbstring.http_input   pass   pass

mbstring.http_output   pass   pass

mbstring.internal_encoding   no value   no value

mbstring.language   neutral   neutral

mbstring.strict_detection   Off   Off

mbstring.substitute_character   no value   no value

mcrypt

mcrypt support   enabled

Version    2.5.7

Api No    20021217

Supported ciphers    cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes

Supported modes    cbc cfb ctr ecb ncfb nofb ofb stream

Directive   Local Value   Master Value

mcrypt.algorithms_dir   no value   no value

mcrypt.modes_dir   no value   no value

memcache

memcache support   enabled

Active persistent connections    0

Revision    $Revision: 1.39 $

mhash

MHASH support    Enabled

MHASH API Version    20060101

mime_magic

mime_magic support   enabled

Directive   Local Value   Master Value

mime_magic.debug   Off   Off

mime_magic.magicfile   /usr/share/file/magic.mime   /usr/share/file/magic.mime

ming

Ming SWF output library    enabled

Version    0.3.0

mysql

MySQL Support   enabled

Active Persistent Links    0

Active Links    1

Client API version    5.0.38

MYSQL_MODULE_TYPE    external

MYSQL_SOCKET    /var/run/mysqld/mysqld.sock

MYSQL_INCLUDE    -I/usr/include/mysql

MYSQL_LIBS    -L/usr/lib -lmysqlclient

Directive   Local Value   Master Value

mysql.allow_persistent   On   On

mysql.connect_timeout   60   60

mysql.default_host   no value   no value

mysql.default_password   no value   no value

mysql.default_port   no value   no value

mysql.default_socket   no value   no value

mysql.default_user   no value   no value

mysql.max_links   Unlimited   Unlimited

mysql.max_persistent   Unlimited   Unlimited

mysql.trace_mode   Off   Off

mysqli

MysqlI Support   enabled

Client API library version    5.0.38

Client API header version    5.0.38

MYSQLI_SOCKET    /var/run/mysqld/mysqld.sock

Directive   Local Value   Master Value

mysqli.default_host   no value   no value

mysqli.default_port   3306   3306

mysqli.default_pw   no value   no value

mysqli.default_socket   no value   no value

mysqli.default_user   no value   no value

mysqli.max_links   Unlimited   Unlimited

mysqli.reconnect   Off   Off

openssl

OpenSSL support    enabled

OpenSSL Version    OpenSSL 0.9.8c 05 Sep 2006

pcre

PCRE (Perl Compatible Regular Expressions) Support    enabled

PCRE Library Version    6.7.7.4 2007-10-28

PDO

PDO support   enabled

PDO drivers    mysql, sqlite, sqlite2

pdo_mysql

PDO Driver for MySQL, client library version   5.0.38

pdo_sqlite

PDO Driver for SQLite 3.x   enabled

PECL Module version    1.0.1 $Id: pdo_sqlite.c,v 1.10.2.6.2.1 2007/01/01 09:36:05 sebastian Exp $

SQLite Library    3.3.13

posix

Revision    $Revision: 1.70.2.3.2.12 $

ps

PS Support    enabled

PSlib Version    0.2.7

Revision    $Revision: 1.29 $

pspell

PSpell Support    enabled

recode

Recode Support    enabled

Revision    $Revision: 1.37.2.1.2.2 $

Reflection

Reflection   enabled

Version    $Id: php_reflection.c,v 1.164.2.33.2.33 2007/01/01 09:36:05 sebastian Exp $

session

Session Support    enabled

Registered save handlers    files user sqlite

Registered serializer handlers    php php_binary wddx

Directive   Local Value   Master Value

session.auto_start   Off   Off

session.bug_compat_42   On   On

session.bug_compat_warn   On   On

session.cache_expire   180   180

session.cache_limiter   nocache   nocache

session.cookie_domain   no value   no value

session.cookie_httponly   Off   Off

session.cookie_lifetime   0   0

session.cookie_path   /   /

session.cookie_secure   Off   Off

session.entropy_file   no value   no value

session.entropy_length   0   0

session.gc_divisor   100   100

session.gc_maxlifetime   1440   1440

session.gc_probability   0   0

session.hash_bits_per_character   4   4

session.hash_function   0   0

session.name   PHPSESSID   PHPSESSID

session.referer_check   no value   no value

session.save_handler   files   files

session.save_path   /home/www/web72/phptmp/   /var/lib/php5

session.serialize_handler   php   php

session.use_cookies   On   On

session.use_only_cookies   Off   Off

session.use_trans_sid   0   0

shmop

shmop support    enabled

SimpleXML

Simplexml support   enabled

Revision    $Revision: 1.151.2.22.2.20 $

Schema support    enabled

snmp

NET-SNMP Support    enabled

NET-SNMP Version    5.2.3

soap

Soap Client    enabled

Soap Server    enabled

Directive   Local Value   Master Value

soap.wsdl_cache   1   1

soap.wsdl_cache_dir   /tmp   /tmp

soap.wsdl_cache_enabled   1   1

soap.wsdl_cache_limit   5   5

soap.wsdl_cache_ttl   86400   86400

sockets

Sockets Support    enabled

SPL

SPL support   enabled

Interfaces    Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject

Classes    AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilterIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RegexIterator, RuntimeException, SimpleXMLIterator, SplFileInfo, SplFileObject, SplObjectStorage, SplTempFileObject, UnderflowException, UnexpectedValueException

SQLite

SQLite support   enabled

PECL Module version    2.0-dev $Id: sqlite.c,v 1.166.2.13.2.6 2007/01/01 09:36:07 sebastian Exp $

SQLite Library    2.8.17

SQLite Encoding    UTF-8

Directive   Local Value   Master Value

sqlite.assoc_case   0   0

standard

Regex Library    Bundled library enabled

Dynamic Library Support    enabled

Path to sendmail    /usr/sbin/sendmail -t -i

Directive   Local Value   Master Value

assert.active   1   1

assert.bail   0   0

assert.callback   no value   no value

assert.quiet_eval   0   0

assert.warning   1   1

auto_detect_line_endings   0   0

default_socket_timeout   60   60

safe_mode_allowed_env_vars   PHP_   PHP_

safe_mode_protected_env_vars   LD_LIBRARY_PATH   LD_LIBRARY_PATH

url_rewriter.tags   a=href,area=href,frame=src,input=src,form=,fieldset=   a=href,area=href,frame=src,input=src,form=,fieldset=

user_agent   no value   no value

sysvmsg

sysvmsg support    enabled

Revision    $Revision: 1.20.2.3.2.6 $

tidy

Tidy support   enabled

libTidy Release    1 September 2005

Extension Version    2.0 ($Id: tidy.c,v 1.66.2.8.2.21 2007/01/23 19:23:29 nlopess Exp $)

Directive   Local Value   Master Value

tidy.clean_output   no value   no value

tidy.default_config   no value   no value

tokenizer

Tokenizer Support    enabled

wddx

WDDX Support   enabled

WDDX Session Serializer    enabled

xml

XML Support    active

XML Namespace Support    active

libxml2 Version    2.6.27

xmlreader

XMLReader    enabled

xmlrpc

core library version    xmlrpc-epi v. 0.51

php extension version    0.51

author    Dan Libby

homepage    http://xmlrpc-epi.sourceforge.net

open sourced by    Epinions.com

xmlwriter

XMLWriter    enabled

xsl

XSL    enabled

libxslt Version    1.1.20

libxslt compiled against libxml Version    2.6.27

EXSLT    enabled

libexslt Version    1.1.20

zip

Zip    enabled

Extension Version    $Id: php_zip.c,v 1.1.2.27 2007/01/29 15:25:06 pajoye Exp $

Zip version    2.0.0

Libzip version    0.7.1

zlib

ZLib Support    enabled

Stream Wrapper support    compress.zlib://

Stream Filter support    zlib.inflate, zlib.deflate

Compiled Version    1.2.1.1

Linked Version    1.2.3

Directive   Local Value   Master Value

zlib.output_compression   Off   Off

zlib.output_compression_level   -1   -1

zlib.output_handler   no value   no value

Additional Modules

Module Name

sysvsem

sysvshm

Environment

Variable   Value

PATH    /usr/local/bin:/usr/bin:/bin

PWD    /

LANG    C

SHLVL    1

_    /usr/sbin/apache2

PHP Variables

Variable   Value

_FILES["immagineInMacelleria"]   

Array

(

    [name] => eventi_gelato.jpg

    [type] => image/jpeg

    [tmp_name] => /home/www/web72/phptmp/phpGLRZcc

    [error] => 0

    [size] => 21773

)

risposto 5 anni fa
Schiappa
X 0 X

I permessi delle cartelle sono tutti 775 tranne quelli dei file che sono 600 (comunque l' upload lo faccio anche in un altro punto del sito e funziona!)

risposto 5 anni fa
Schiappa
X 0 X

Errore: i permessi dei file sono 664

risposto 5 anni fa
Schiappa
X 0 X

In linea teorica mi sembra sia tutto corretto il tuo codice.

Sei sicuro di caricare nella directory corretta?

risposto 5 anni fa
Mario Santagiuliana
X 0 X

Sì. Ho fatto varie prove.... Ora inizio con lo smontare le pagine e rimontarle pezzo per pezzo partendo dall'upload...che stress...speriamo servi a qualcosa....

risposto 5 anni fa
Schiappa
X 0 X

Come già detto in più occasioni, il metodo più bello e semplice è quello di fare un debug del codice con xdebug (o analogo) riga per riga...

risposto 5 anni fa
Mario Santagiuliana
X 0 X

ieri ho istallato apache, poi xdebug, ho scaricato eclipse, ma non so come si usa.....

Ho fatto dei tentativi, ma non mi riesce usarlo.

Ora sono alle strette coi tempi. Questo strumento per i debug confido che sia comodissimo e utilissimo, ma ora non ho il tempo di studiarmelo.......

oltretutto ho fatto:

inserisci-eventoTEST.php:

<?php include("INC_headerTEST.php"); ?>   
<div id="main">
<?php include("INC_menu.php"); ?>
<?php include("../Server/connessione.php"); ?>

<div id="contenuto">

<h1>Inserisci evento:</h1><br />

<form id="evento" method="post" action="Server/inserimento-eventoTEST.php" enctype="multipart/form-data">

   <table width="910" border="0" cellpadding="20" cellspacing="0">
        <tr>
           
           <td bgcolor="#F4F4F4">
              Inserisci l'<span style="font-weight: bold">IMMAGINE PER L'EVENTO IN MACELLERIA</span> <br />(320 x 110 pixel) <br />
             <input name="immagineInMacelleria" type="file" size="40" />
                     </td>
      </tr>    
       <tr>
           <td bgcolor="#F4F4F4">&nbsp;</td>
           <td align="right" bgcolor="#F4F4F4">
             <input type="submit" name="button" id="button" value="Salva modifiche" class="call-to-action" />  
            </td>
       </tr>
   </table>
</form>

</div><!-- fine di contenuto -->   
<?php include("INC_footer.php"); ?>   

inserimento-eventoTEST.php

<?php
   session_start();
   ob_start();
   
   error_reporting(E_ALL);
   ini_set('display_errors', true);
   ini_set('log_errors', true);

   include("../../Server/connessione.php"); 

      //Inserisco l'immagine dellevento in macelleria (se c'è)
      if(is_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'])){
         @move_uploaded_file($_FILES['immagineInMacelleria']['tmp_name'], '../../images/eventi/interni/menu/'.$_FILES['immagineInMacelleria']['name']);
      };
   
   mysql_close($db);   
   exit();   
?>

.....ma niente da fare.......

Anch'io ho pensato fosse sbagliato il percorso: ho copiato il percorso del codice, sono andato su filezilla, mi sono messo nella cartella dove è contenuto lo script e ho copiato il percorso nella barra apposita.

Come risultato mi son trovato nella cartella desiderata.....

risposto 5 anni fa
Schiappa
X 0 X

Ho levato la @ a @move_uploaded_file e mi ha dato questi errori (non so se è normale):

Warning: move_uploaded_file(../../images/eventi/interni/menu/eventi_gelato.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in /XXX/XX/X/inserimento-eventoTEST.php on line 11

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/home/www/web72/phptmp/phpS1metB' to '../../images/eventi/interni/menu/eventi_gelato.jpg' in /XXX/XX/X/inserimento-eventoTEST.php on line 11

risposto 5 anni fa
Schiappa
X 0 X

E questi warning non li avevi visti nei log di apache?

E' un problema di permessi, prova ad impostarli a 777.

risposto 5 anni fa
Mario Santagiuliana
X 0 X

con @ non me li dava.... comunque i permessi sono a 775(controllato) e su un'altra pagina faccio già degli upload di immagini con esito positivo..... comunque ora provo a metter 777 (anche se mi pare un po' nocivo)

risposto 5 anni fa
Schiappa
X 0 X

In effetti lo è...sarebbe da controllare anche i permessi del file che è stato caricato (anche se non dovrebbe aver problemi)...

risposto 5 anni fa
Mario Santagiuliana
X 0 X

Ho messo i permessi a 777 e funziona! Io ammetto di non capirci più niente: perché da questo script sono necessari i permessi settati a 777 e da un' altro(del solito dominio) no?

risposto 5 anni fa
Schiappa
X 0 X

1) Puoi ricontrollare i permessi dell'uno e dell'altro?

2) puoi controllare/modificare eventualmente il proprietario e l'utente delle due directory?

risposto 5 anni fa
Mario Santagiuliana
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda