Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Inserire URL immagine in un form e poi controllarne l'autenticità
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • F
      filippotoso User Attivo • ultima modifica di

      Puoi controllare il content-type (es. $_FILES['userfile']['type']) oppure il nome del file (es. $_FILES['userfile']['name']).

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • A
        alexmiller User • ultima modifica di

        tipo:

        if $_FILES['nomefile?']['.jpg'] ?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • F
          filippotoso User Attivo • ultima modifica di

          Esegui questo codice per capire cosa intendo:

          [php]<pre><?php print_r($_FILES); ?></pre>[/php]

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • I
            ilnetsurfer User Attivo • ultima modifica di

            Hai due possiilità:
            o utilizzi il tipo MIME:
            [php]<?php
            $array = array("image/jpeg","image/gif","image/png");//Array con i tipi MIME
            if(in_array($_FILES['file']['type'],$array)){//Controlla se il tipo è presente nell'array
            echo "Ok";//true
            }
            else
            {
            echo "formato non supportato";//false
            }
            ?>[/php]Oppure:
            [php]<?php
            $array = array("gif","jpg","png","bmp");
            $ext_file = explode("." , $_FILES['file']['name']);//divide la stringa in base al punto(es $name ="img.mia.png" con explode $name[0] = "img" $name[1] = "mia" $name[2] = "png"
            $count_ext_files = count($ext_file)-1;//conta quante stringhe ci sono adesso meno l'ultima(a causa dello zero)
            $ext = $ext_file[$count_ext_files];//eccoci restituita l'estensione
            if(in_array($ext,$array)){//Controlla se il tipo è presente nell'array
            echo "Ok";//true
            }
            else
            {
            echo "formato non supportato";//false
            }
            ?>[/php]

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • A
              alexmiller User • ultima modifica di

              Sarò io che non mi sono fatto capire bene, io volevo far sì che l'URL venga controllato e assicurato che finisca in un formato immagine, oppure restituisce un errore. Non è un Upload.

              EDIT: Forse ho detto la scemenza della 10 di sera, non sarà che il tuo secondo esempio controlli la parte dopo il "."? Se fosse così, non deve controllare un file, ma la fine di un URL...

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • F
                filippotoso User Attivo • ultima modifica di

                Se l'utente inserisce un URL in un campo input text (o in una textarea), puoi comunque utilizzare parte del codice suggerito da ilnetsurfer (quella con l'array delle estensioni).

                Tieni comunque presente che l'utente potrebbe voler inserire un URL verso una risorsa dinamica (es. example.com/image?id=1) ed in quel caso il metodo non funzionerebbe.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • A
                  alexmiller User • ultima modifica di

                  Quindi è consigliabile inserire un form di Upload?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • F
                    filippotoso User Attivo • ultima modifica di

                    Dipende dal fine della tua applicazione. Solitamente questa funzione viene implementata in vari modi (URL, upload e scelta da una lista predefinita di immagini).

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • A
                      alexmiller User • ultima modifica di

                      É un piccolo progetto ancora, agli utenti non costerà niente salvarsi l'immagine nel PC e caricarla 🙂 . Magari ora vedo se riesco a far funzionare quel vecchio script di upload. Thanks.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • F
                        filippotoso User Attivo • ultima modifica di

                        Per l'upload puoi provare con il codice del manuale ufficiale. Se vuoi comunque usare l'URL, prova con questo codice:

                        [php]<?php
                        $url = 'inserisci qui il tuo URL';
                        $array = array("gif", "jpg", "png", "bmp");
                        $ext = substr($url, strrpos($url, '.') + 1);
                        if (in_array($ext, $array)) {
                        echo "Ok";
                        } else {
                        echo "formato non supportato";
                        }
                        ?> [/php]

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • A
                          alexmiller User • ultima modifica di

                          e questo cerca solo "in fondo" all'URL per il formato, no?

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • F
                            filippotoso User Attivo • ultima modifica di

                            Esatto. Se vuoi una funzione più accurata puoi farla applicare alla sola componente path restituita dalla funzione parse_url()

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • A
                              alexmiller User • ultima modifica di

                              blblblblblbl, non dico altro. 😛

                              Grazie della dritta e di tutto!

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              Caricamento altri post
                              Rispondi
                              • Topic risposta
                              Effettua l'accesso per rispondere
                              • Da Vecchi a Nuovi
                              • Da Nuovi a Vecchi
                              • Più Voti