Aggiungere immagini in un blog fatto in PHP

U

Utente 399201

Ospite
Buonasera,
Sto realizzando un blog utilizzando PHP e Mysql.
Il problema è che ora devo fare una pagina che permette la creazione di un articoli e, per questi articoli, sono presenti delle foto.
Ho provato a fare delle semplici ricerche sul tema "Upload Image into Database" però mi sta sorgendo una domanda:
è il modo giusto per aggiungere immagini nuove (quindi non presenti nella cartella img del progetto) oppure devo usare un'altro metodo?
 

SACERDAVE

Utente Attivo
269
42
CPU
i7 2600k 4.5 GHz
Dissipatore
Noctua NH-D15
Scheda Madre
Asus P8P67
HDD
Samsung 850 Evo 250gb + Crucial BX500 + WD Black 1tb + Seagate 250gb
RAM
Corsair Vengeance & Gskill RipjawsX | 4x4gb DDR3-1600 CL9
GPU
Nvidia GTX 1060 6gb Zotac
Monitor
Samsung S34J552 3440x1440
PSU
Corsair AX750
Case
Cooler Master Haf912 Plus MOD (TODO custom case)
Periferiche
Corsair K70 + Logitech G502 Hero + Xbox One Controller
Net
Fastweb Fibra 200mb
OS
W10
Ciao, posta un po' di codice così ti sappiamo aiutare meglio :) segui le linee guida di una domanda su stackoverflow

In generale, senza scomodare sistemi di storage in cloud, devi effettuare l'upload dell'img da php, posizionarla sul disco del server, salvarti il path nel db. Tramite l'html <img src={path}>, se impostato correttamente il tuo server/reverse proxy (nginx/apache), si visualizzerà l'immagine


EDIT: aggiungo un paio di link untested delle prime ricerche a caso su google...

https://www.codexworld.com/upload-store-image-file-in-database-using-php-mysql/
https://www.geeksforgeeks.org/how-to-upload-image-into-database-and-display-it-using-php/
https://codewithawa.com/posts/image-upload-using-php-and-mysql-database
 
U

Utente 399201

Ospite
Codice:
  if(isset($_POST['carica'])) {
    if(!empty($_POST['titolo']) || !empty($_POST['testo']) || !empty($_POST['video']) || !empty($_FILES['immagineArticolo']) || !empty($_FILES['immagineSmall']) || !empty($_FILES['immagineBg'])){
      $titolo = $_POST['titolo'];
      $testo = $_POST['testo'];
      $video = $_POST['video'];
      $tagArticolo = $_POST['tag'];
      $descrizioneHome = $_POST['descrizione'];
      $string = "A".strval(count($arrayArticoli) + 1);
      $data = $_POST['event_dt'];
      $query = "INSERT INTO Articoli(idArticolo,titoloArticolo,testoArticolo,videoArticolo,tagArticolo,dataArticolo,descrizioneHome) VALUES ('".$string."','".$titolo."','".$testo."','".$video."','".$tagArticolo."','".$data."','".$descrizioneHome."')";
      /*if ($queryLogin = $connessione->query($query)) {
        header('location: index.php');
      }*/
      $immagineArticoloname = $_FILES["immagineArticolo"]["name"];
      $immagineArticolotmp_name = $_FILES["immagineArticolo"]["tmp_name"];
      $folder = 'imgBlog/'.$immagineArticoloname;
      if ($queryLogin = $connessione->query("UPDATE Articoli SET immagineArticolo = $immagineArticoloname  WHERE idArticolo = '$string'")) {
        move_uploaded_file($immagineArticolotmp_name, $folder);
        header('location: index.php');
      }

      /*$immagineArticolo = 'imgBlog/' + $_POST['immagineArticolo'];
      $immagineSmall = 'smallImg/' + $_POST['immagineSmall'];
      $immagineBg = 'bg/' + $_POST['immagineBg'];*/
    }else{
        header('location: carica_articolo.php');
    }
  }

Ti giro la parte del codice che carica il nuovo articolo nel DB.
Comunque se ho capito bene prima devo sempre caricare l'immagine sul server dove c'è tutto il sito, giusto?
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili