Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema con inserimento file da back end

    Ciao a tutti.
    Avrei bisogno di una mano.Non riesco ad importare una foto da backend in un database.
    Il database l'ho chiamato PORTALE, e ho creato la seguente tabella:

    create table news(
    idn1 int(11) NOT NULL auto_increment,
    titolo1 char(20) NOT NULL,
    mini1 char(20) NOT NULL,
    news1 char(20)NOT NULL,
    pub char(20)NOT NULL,
    foto blob NOT NULL,
    size int(10)NOT NULL,
    type varchar(50)NOT NULL,
    primary key(idn1)
    )


    Ho poi creato un form html che fa da pannello per l'inserimento:

    <html>

    <body>
    <form action="upload.php" method="post" enctype="multipart/form-data" name="form1">
    <table width="52%" border="0">
    <tr>
    <td width="42%">titolo</td>
    <td width="58%"><input name="titolo1" type="text" id="titolo1"></td>
    </tr>
    <tr>
    <td>Mininews</td>
    <td><input name="mini1" type="text" id="mini1"></td>
    </tr>
    <tr>
    <td>News</td>
    <td><textarea name="news1" id="news1"></textarea></td>
    </tr>
    <tr>
    <td>Pub</td>
    <td><input name="pub" type="text" id="titolo13"></td>
    </tr>
    <tr>
    <td>Foto</td>
    <td><input name="foto" type="file" id="foto"></td>
    </tr>
    </table>


    </p>



    <input type="submit" name="Submit" value="Invia">
    </p>
    </form>
    </body>
    </html>


    ed infine il file che passo upload.php

    <?php

    // immissione dati
    @mysql_connect("localhost", "root", "") or die("Connessione fallita !");
    @mysql_select_db("PORTALE") or die("Selezione Database fallita !");

    echo"<font color=\"#0000FF\" face=\"Arial Black\" size=\"5\">Verifica Dati</font>";

    echo"
    ";


    // MEMORIZZIAMO NELLA VARIABILE $data IL CONTENUTO DEL FILE

    $data = addslashes(fread(fopen($_FILES["foto"]["tmp_name"], "rb"), $_FILES["foto"]["size"]));

    // ESEGUIAMO LA QUERY DI INSERIMENTO

    $result = @mysql_query("INSERT INTO news (titolo1, mini1, news1,pub,foto, size, type)
    VALUES ('" . $_POST["titolo1"] . "','" . $_POST["mini1"] . "','" . $_POST["news1"] . "',
    '" . $_POST["pub"] . "',
    '$data','" . $_FILES["foto"]["name"] . "',
    '" . $_FILES["foto"]["size"] . "','" . $_FILES["foto"]["type"] . "')")
    or die("Query di inserimento fallita !");

    // ESITO POSITIVO
    echo "Il file " . basename($_FILES["foto"]["name"]) . " è stato correttamente inserito nel Database.";


    ?>

    Sò che potrà sembrare un probema da principiante ma purtroppo non sò come andare avanti.
    Grazie a tutti

  2. #2

    Re: Problema con inserimento file da back end

    Originariamente inviato da 19pantarei75
    Ciao a tutti.
    Avrei bisogno di una mano.Non riesco ad importare una foto da backend in un database.
    Il database l'ho chiamato PORTALE, e ho creato la seguente tabella:

    create table news(
    idn1 int(11) NOT NULL auto_increment,
    titolo1 char(20) NOT NULL,
    mini1 char(20) NOT NULL,
    news1 char(20)NOT NULL,
    pub char(20)NOT NULL,
    foto blob NOT NULL,
    size int(10)NOT NULL,
    type varchar(50)NOT NULL,
    primary key(idn1)
    )


    Ho poi creato un form html che fa da pannello per l'inserimento:

    <html>

    <body>
    <form action="upload.php" method="post" enctype="multipart/form-data" name="form1">
    <table width="52%" border="0">
    <tr>
    <td width="42%">titolo</td>
    <td width="58%"><input name="titolo1" type="text" id="titolo1"></td>
    </tr>
    <tr>
    <td>Mininews</td>
    <td><input name="mini1" type="text" id="mini1"></td>
    </tr>
    <tr>
    <td>News</td>
    <td><textarea name="news1" id="news1"></textarea></td>
    </tr>
    <tr>
    <td>Pub</td>
    <td><input name="pub" type="text" id="titolo13"></td>
    </tr>
    <tr>
    <td>Foto</td>
    <td><input name="foto" type="file" id="foto"></td>
    </tr>
    </table>


    </p>



    <input type="submit" name="Submit" value="Invia">
    </p>
    </form>
    </body>
    </html>


    ed infine il file che passo upload.php

    <?php

    // immissione dati
    @mysql_connect("localhost", "root", "") or die("Connessione fallita !");
    @mysql_select_db("PORTALE") or die("Selezione Database fallita !");

    echo"<font color=\"#0000FF\" face=\"Arial Black\" size=\"5\">Verifica Dati</font>";

    echo"
    ";


    // MEMORIZZIAMO NELLA VARIABILE $data IL CONTENUTO DEL FILE

    $data = addslashes(fread(fopen($_FILES["foto"]["tmp_name"], "rb"), $_FILES["foto"]["size"]));

    // ESEGUIAMO LA QUERY DI INSERIMENTO

    $result = @mysql_query("INSERT INTO news (titolo1, mini1, news1,pub,foto, size, type)
    VALUES ('" . $_POST["titolo1"] . "','" . $_POST["mini1"] . "','" . $_POST["news1"] . "',
    '" . $_POST["pub"] . "',
    '$data','" . $_FILES["foto"]["name"] . "',
    '" . $_FILES["foto"]["size"] . "','" . $_FILES["foto"]["type"] . "')")
    or die("Query di inserimento fallita !");

    // ESITO POSITIVO
    echo "Il file " . basename($_FILES["foto"]["name"]) . " è stato correttamente inserito nel Database.";


    ?>

    Sò che potrà sembrare un probema da principiante ma purtroppo non sò come andare avanti.
    Grazie a tutti
    ma scusa tu vorresti fare un upload normale?? o solo inserire i nomi nel db??

  3. #3
    Salve!
    Vorrei inserire i dati in un database chiamato 'Portale' da un form.
    Fin quando si tratta di inserire dati in campi varchar, tutto ok, quando tra loro,come nel mio caso, c'è un campo di tipo BLOB,non riesco ad azzecare il codice giusto.

    L'ultima prova di file upload.php che ho fatta è questa:

    <?php

    // immissione dati
    @mysql_connect("localhost", "root", "") or die("Connessione fallita !");
    @mysql_select_db("PORTALE") or die("Selezione Database fallita !");
    echo"<font color=\"#0000FF\" face=\"Arial Black\" size=\"5\">Verifica Dati</font>";
    echo"
    ";

    // inserimento dei dati in una tabella
    $sql="INSERT INTO news(titolo1,mini1,news1,foto,pub) VALUES ('$titolo1','$mini1','$news1','$foto','$pub')";

    // serve per verificare se l'inserimento è avvenuto correttamente
    if(mysql_query($sql,$connessione)){
    echo"inserimento avvenuto correttamente";
    }
    else{
    errore();
    exit;
    }
    mysql_close($connessione)
    // chiusura della connessione con il database

    ?>

    ma non funziona. Sapreste aiutarmi. GRAZIE!

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.