Käyttäjien lähettämien tiedostojen tallentaminen MySQL-tietokantaan

click fraud protection

Joskus on hyödyllistä kerätä tietoja verkkosivustosi käyttäjiltä ja tallentaa nämä tiedot MySQL tietokanta. Olemme jo nähneet, että voit täyttää tietokannan käyttämällä PHP, lisäämme nyt käytännöllisyyden sallia tietojen lisääminen käyttäjäystävällisen verkkosivun kautta.

Seuraavaksi sinun on tehtävä process.php, sivu, johon lomakkeemme lähettää tiedot. Tässä on esimerkki kuinka kerätä nämä tiedot lähettääksesi MySQL-tietokantaan:

Tietenkin, ennen kuin kokelemme sitä, meidän on varmistettava, että taulukko todella on olemassa. Tämän koodin suorittamisen pitäisi luoda taulukko, jota voidaan käyttää mallitiedostojemme kanssa:

Nyt tiedät kuinka tallentaa käyttäjätietoja MySQL: ään, joten siirrytään askeleen eteenpäin ja opitaan, kuinka tiedosto ladataan varastointia varten. Ensin tehdään näytteistietokantamme:

Ensimmäinen asia, jonka huomaa, on kenttä nimeltään id se on asetettu AUTO_INCREMENT. Mitä tämä tietotyyppi tarkoittaa sitä, että lasketaan, kun jokaiselle tiedostolle annetaan yksilöivä tiedostotunnus, joka alkaa arvosta 1 ja menee arvoon 9999 (koska määrittelimme 4 numeroa). Huomaat myös todennäköisesti, että tietokenttäämme kutsutaan

instagram viewer
LONGBLOB. BLOB-tyyppejä on monia, kuten olemme aiemmin maininneet. TINYBLOB, BLOB, MEDIUMBLOB ja LONGBLOB ovat vaihtoehtosi, mutta asetimme omaisuudeksi LONGBLOB salliaksesi suurimmat mahdolliset tiedostot.

Seuraavaksi luomme lomakkeen, jonka avulla käyttäjä voi ladata tiedostonsa. Tämä on vain yksinkertainen muoto, tietysti voit pukeutua siihen jos haluat:

Seuraavaksi meidän on todella luotava upload.php, joka vie käyttäjien tiedoston ja tallentaa sen tietokantaamme. Alla on esimerkki upload.php-koodauksesta.

Seuraavaksi se käyttää addslashes toimia. Tämän avulla lisätään tarvittaessa alaviivoja tiedostonimeen, jotta emme saa virhettä tietokantaa kyselyssä. Esimerkiksi, jos meillä on Billy'sFile.gif, se muuntaa tämän Billy'sFile.gif. fopen avaa tiedoston ja fread on binäärinen turvallinen tiedosto, joka luetaan niin, että addslashes lisätään tarvittaessa tiedoston sisältämiin tietoihin.

Seuraavaksi lisäämme kaikki lomakkeemme kerätyt tiedot tietokantaamme. Huomaat, että luetelimme kentät ensin ja arvot toiseksi, joten emme yritä vahingossa lisätä tietoja ensimmäiseen kenttään (automaattinen ID-kentän määrittäminen).

Olemme jo oppineet hakemaan tavallinen tieto MySQL-tietokannastamme. Samoin tiedostojen tallentaminen MySQL-tietokantaan ei olisi kovin käytännöllistä, ellei niitä olisi mahdollista hakea. Tapa, jolla aiomme oppia tekemään tämän, on osoittamalla jokaiselle tiedostolle URL-osoite ID-numeronsa perusteella. Jos muistat, kun latasimme tiedostoja, osoitimme automaattisesti jokaiselle tiedostolle tunnusnumeron. Käytämme tätä täällä, kun soitamme tiedostot takaisin. Tallenna tämä koodi download.php-muodossa

Nyt hakeaksesi tiedostomme, osoitamme selaimesi: http://www.yoursite.com/download.php? id = 2 (korvaa kaksi millä tahansa tiedostotunnuksella, jonka haluat ladata / näyttää)

Tämä koodi on perusta monien asioiden tekemiselle. Tämän avulla pohjana voit lisätä tietokantakyselyyn, joka luetteloi tiedostot, ja laittaa ne avattavaan valikkoon, jota ihmiset voivat valita. Tai voit asettaa tunnuksen satunnaisesti luoduksi numeroksi, niin että tietokannasta erilainen grafiikka näytetään satunnaisesti joka kerta, kun henkilö käy. Mahdollisuudet ovat rajattomat.

Kuten aikaisempi tiedostojemme latauskoodimme, tämän komentosarjan avulla tiedostot voidaan poistaa vain kirjoittamalla niiden URL-osoite: http://yoursite.com/remove.php? id = 2 (korvaa 2 tunnuksella, jonka haluat poistaa.) Ilmeisistä syistä haluat Ole varovainen tämän koodin suhteen. Tämä on tietysti esittelyä, kun todella rakennamme sovelluksia, haluamme ottaa käyttöön suojatoimenpiteitä kysy käyttäjältä, ovatko he varmoja haluavansa poistaa, tai sallivatko salasanan käyttäjät vain poistaa tiedostoja. Tämä yksinkertainen koodi on perusta, johon rakennamme tehdä kaikki nämä asiat.

instagram story viewer