• User Attivo

    Ciao Alex,

    scusa ma fai veramente tanta confusione :mmm:

    Perché invece di buttarti alla cieca non cominci a studiare un pò le basi del linguaggio 🙂

    Ho capito che non è la tua professione e lo fai solo per puro hobby, ma imparando quantomeno i concetti basi di PHP eviti di fare esclusivamente copia e incolla e di impantanarti in sciocchezze che risolveresti in poco tempo.

    Nel codice che hai postato hai definito questa variabile

    [PHP]
    $filesize = $_FILES["file"];
    [/PHP]

    ma poi nella query scrivi questo

    [PHP]
    size='".$_FILES."'
    [/PHP]

    che è sbagliato. Il codice corretto è

    [PHP]
    size='".$_FILES["file"]."'
    [/PHP]

    oppure, dato che $_FILES["file"] lo hai già salvato nella variabile $filesize, puoi scrivere direttamente

    [PHP]
    size='".$filesize."'
    [/PHP]

    e così anche per gli altri campi.

    Considera che $_FILES è un array associativo, ossia un contenitore di variabili a cui puoi accedere tramite indici di tipo stringa e che contiene le informazioni sui file caricati tramite un form.

    Quindi, se ad esempio hai caricato il file tramite questo campo

    [HTML]
    <input id="file" name="file" type="file" />
    [/HTML]

    lato PHP potrai accedere alle informazioni di quel file tramite $_FILES['file']. Se nel <input> mettevi name="miofile", lato PHP avresti dovuto usare $_FILES['miofile'].

    Andando a vedere la documentazione di PHP https://www.php.net/manual/en/features.file-upload.post-method.php si scopre che puoi accedere alle seguenti informazioni

    [PHP]
    $_FILES['file']['name']
    $_FILES['file']['type']
    $_FILES['file']
    $_FILES['file']['tmp_name']
    $_FILES['file']['error']
    [/PHP]

    Devi quindi indicare sempre due indici, il primo rappresenta il name del tag HTML <input> da cui hai caricato il file e il secondo l'informazione a cui vuoi accedere (name, type, size, etc...).

    Se ti interessa ho pubblicato di recente un sito di nome Guida PHP, che raccoglie una serie di guide e tutorial sul PHP per principianti e non. Se ti va dacci un occhio 😉


  • User Attivo

    Ciao Flavio,
    e si, mi riesce meglio il mio lavoro, :fumato:

    ma il php e' diventato una fissa , ho ancora molto da imparare, sono un principante,

    dunque ho cambiato la query, risultato zero, non funziona

    [PHP]
    $query = mysql_query ("INSERT INTO gallery
    file='".$_FILES["file"]["name"]."',
    size='".$_FILES["file"]."',
    info='".$_POST['info']."'
    WHERE actor_id_fk=". $actor_id) ;

    [/PHP]

    graze per l'info del tuo sito


  • User Attivo

    qualcosa mi sfugge, non riesco a capire

    dopo l'esecuzione della query ricevo questo

    Attenzione! Dati non inseriti!

    **il file Blair, Linda (I)#[7].jpg è stato caricato con successo. **Array ( [id] => 54 ) INSERT INTO gallery=file='Array', size='', info='imdb' WHERE id=54

    provato con altra query semplficata, non funziona :bho:

    [PHP]
    $query = mysql_query ("INSERT INTO gallery
    name='".$filename."',
    size='".$filesize."',
    info='".$info."'
    WHERE actor_id_fk=". $actor_id) ;

    [/PHP]

    ho rinominato un campo nel database, da file a name per non confondermi

    image


  • User

    hai provato:

    
    
    'INSERT INTO `gallery`(name, size, info)....
    VALUES("'.$filename.'","'.$filesize.'","'.$info.'")....
    

  • User

    oppure

    'INSERT INTO `gallery`(name, size, info)....
    VALUES('.$filename.','.$filesize.','.$info.')....
    

  • User Attivo

    Ciao chiabgigi,

    ho provato ma non funziona, penso che l'errore sia qui 😞

    **Array ( [id] => 54 ) INSERT INTO gallery=file='Array', size='', info='imdb' WHERE id=54

    WHERE id=54**
    dovrebbe essere **
    WHERE actor_id_fk=54**


  • User Attivo

    Quando qualcosa non funziona, posta pure l'errore. Non quello dell'applicazione (Es. dati non inseriti) ma quello che ti segnala l'interprete PHP (Es. PHP Fatal error: o PHP Warning).

    Magari quando finisci quest'applicazione, prova a passare a MySQLi o meglio ancora a PDO per gestire le operazioni su database 😄

    Le funzioni native mysql_* sono morte e sepolte da tempo.


  • User

    ciao Alex
    quindi per facilitare il tuo lavoro e in nostro 'aiuto' dovresti anche pubblicare il motivo del malfunzionamento.
    Una cosa tipo.....
    https://drive.google.com/file/d/1uhUrxoW8EY685SHK-oBotQJ_S2u6DN90/view?usp=sharing


  • User Attivo

    flaviors200

    Ciao,
    non visualizzo nessen errore, semplicemente la query non viene eseguita, ma le foto vengono spostate nella cartella preimpostata,
    quando ho incominciato il mio progetto sono partito con il MySQL, passare a MySQLi significa controllare e modificare tutto il codice, un'impresa per me,
    ripeto non sono un programmatore , il mio lavoro e tutta'altro (li sono professionale) solo hobby e voglia d'imparare, questo progetto non sara' mai messo online, solo per uso personale, quindi non mi pongo il problema sulla sicurezza, login ecc..
    Forse in futuro quando saro' abbastanza bravo provero' con il MySQLi e il PDO.

    chiabgigi

    Ciao, leggi sopra

    ps: mi dovro' rassegnare e inserire i dati da phpmyadmin 😞


  • User

    @Alex
    per favore mi dici quali programmi stai usando?


  • User Attivo

    @chiabgigi said:

    @Alex
    per favore mi dici quali programmi stai usando?

    per il codice o il server?


  • User

    entrambi
    comunque accedi al tuo php.ini e vedi cosa corrisponde a queste voci:
    error_reporting
    display_errors
    display_startup_errors
    log_errors
    ignore_repeated_errors
    html_errors


  • User Attivo

    error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT
    display_errors = On
    display_startup_errors = On
    log_errors = On
    ignore_repeated_errors = Off
    html_errors = On

    Uso:
    Notepad++
    opensource e molto flessibile con i plugin, mi colora il codice e mi segnala errori

    https://notepad-plus-plus.org/

    **Open Server Panel:
    **per il server, dalla Russia,
    molto potente e configurabile, posso gestire domini, aliases, crono, e-mail,moduli, encoding ecc..

    https://ospanel.io/

    Bootstrap
    per la grafica

    https://getbootstrap.com/?


  • User

    prova a cambiare error_reporting (è sufficente un ';', non lo cancellare)
    metti questo:
    error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT

    prova a postare l'intero codice usando questo: pastebin.com
    Come si usa pastebin.com

    1. Copia il contenuto del tuo file, (seleziona tutti, copia)
    2. Vai su www.pastebin.com
    3. Incolla il codice nella finestra di pastebin
    4. Assicurati di eseguire il rilevato di PHP (clic su [PHP]])
    5. Ti darà un nuovo URL, Copia l'URL
    6. Incolla l'URL nella tua domanda

  • User

    open server:
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Gestione e registrazione degli errori;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    ; error_reporting è un campo bit. O ogni numero in alto per ottenere l'errore desiderato
    ; livello di segnalazione
    ; E_ALL - Tutti gli errori e gli avvisi (non include E_STRICT)
    ; E_ERROR - errori di runtime fatali
    ; E_WARNING - avvisi di runtime (errori non fatali)
    ; E_PARSE - errori di analisi in fase di compilazione
    ; E_NOTICE - avvisi di runtime (si tratta di avvisi che spesso risultano
    ; da un bug nel codice, ma è possibile che lo fosse
    ; intenzionale (ad esempio, utilizzando una variabile non inizializzata e
    ; basandosi sul fatto che viene automaticamente inizializzato su un
    ; stringa vuota)
    ; E_STRICT: avvisi di runtime, consentono a PHP di suggerire modifiche
    ; al tuo codice che garantirà la migliore interoperabilità
    ; e inoltra la compatibilità del tuo codice
    ; E_CORE_ERROR - errori irreversibili che si verificano durante l'avvio iniziale di PHP
    ; E_CORE_WARNING - avvisi (errori non fatali) che si verificano durante i PHP
    ; avvio iniziale
    ; E_COMPILE_ERROR - errori fatali durante la compilazione
    ; E_COMPILE_WARNING - avvisi in fase di compilazione (errori non fatali)
    ; E_USER_ERROR - messaggio di errore generato dall'utente
    ; E_USER_WARNING - messaggio di avviso generato dall'utente
    ; E_USER_NOTICE - messaggio di avviso generato dall'utente
    ;
    ; Esempi:
    ;
    ; - Mostra tutti gli errori, ad eccezione di avvisi e avvertenze sugli standard di codifica
    ;
    ; error_reporting = E_ALL & ~ E_NOTICE & ~ E_STRICT
    ;
    ; - Mostra tutti gli errori, ad eccezione degli avvisi
    ;
    ; error_reporting = E_ALL & ~ E_NOTICE
    ;
    ; - Mostra solo errori
    ;
    ; error_reporting = E_COMPILE_ERROR | E_ERROR | E_CORE_ERROR
    ;
    ; - Mostra tutti gli errori
    ;
    error_reporting = E_ALL

    [upd = 1405174634] [/ upd]
    Или же используй функцию error_reporting ()


  • User Attivo

  • User

    nel sito:

    [CENTER]Non abbiamo trovato nulla
    Il proprietario ha rimosso i file o l'accesso limitato o c'è un errore di battitura nel collegamento.[/CENTER]

    come mai russo?

    fai come ti ho detto io pastebin


  • User Attivo

    perche abito qui, ho l'account su Yandex Disk, :fumato:

    ho ripostato il link

    [https://yadi.sk/d/T4PCQ6U6RM5ogg

    image
    ](https://yadi.sk/d/T4PCQ6U6RM5ogg)


  • User

    domanda: come si fa' a postare direttamente immagine, no url (tipo google drive)


  • User Attivo

    Buongiorno,
    ho il sospetto che la query non potra' mai funzionare, il motivo e' semplice, necessita delle query di unione per le collegare le 2 tabelle che sono actor e gallery,
    qualcuno conferma?