| Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> PHP /MySQL programmering >> Content
    Hvordan setter du inn filer i en database ved hjelp av PHP?
    `` php

    // Database -legitimasjon

    $ servername ="localhost";

    $ brukernavn ="brukernavn";

    $ passord ="passord";

    $ dbname ="myDatabase";

    // Opprett tilkobling

    $ conn =new mysqli ($ servernavn, $ brukernavn, $ passord, $ dbname);

    // Kontroller tilkobling

    if ($ conn-> connect_error) {

    die ("Forbindelse mislyktes:". $ conn-> connect_error);

    }

    // Filopplastningsdetaljer

    $ Target_Dir ="Uploads/";

    $ Target_File =$ Target_Dir. basename ($ _ filer ["filetoUpload"] ["name"]);

    $ uploadok =1;

    $ ImageFileType =StrTolower (PathInfo ($ Target_File, PathInfo_Extension));

    // sjekk om bildefil er et faktisk bilde eller et falskt bilde

    if (isset ($ _ post ["send"])) {

    $ check =getImageSize ($ _ filer ["filetoUpload"] ["tmp_name"]);

    if ($ sjekk! ==falsk) {

    Echo "-fil er et bilde -". $ sjekk ["mime"]. ".";

    $ uploadok =1;

    } annet {

    ekko "-fil er ikke et bilde.";

    $ uploadok =0;

    }

    }

    // sjekk om filen allerede eksisterer

    if (file_exists ($ target_file)) {

    ekko "Beklager, filen eksisterer allerede.";

    $ uploadok =0;

    }

    // sjekk filstørrelse

    if ($ _files ["filetoUpload"] ["størrelse"]> 500000) {

    ekko "Beklager, filen din er for stor.";

    $ uploadok =0;

    }

    // Tillat visse filformater

    if ($ imagefiletype! ="jpg" &&$ imagefiletype! ="png" &&$ imagefiletype! ="jpeg"

    &&$ imagefiletype! ="gif") {

    Echo "Beklager, bare JPG, JPEG, PNG &GIF -filer er tillatt.";

    $ uploadok =0;

    }

    // sjekk om $ uploadok er satt til 0 med en feil

    if ($ uploadok ==0) {

    ekko "Beklager, filen din ble ikke lastet opp.";

    // Hvis alt er i orden, kan du prøve å laste opp fil

    } annet {

    if (move_uploaded_file ($ _ files ["filetoUpload"] ["tmp_name"], $ target_file)) {

    ekko "filen". basename ($ _files ["filetoUpload"] ["name"]). "Har blitt lastet opp.";

    // Sett inn fildetaljer i databasen

    $ filnavn =basename ($ _ filer ["filetoUpload"] ["name"]);

    $ file_path =$ Target_file;

    $ sql ="Sett inn i filer (filnavn, file_path) verdier ('$ filnavn', '$ file_path')";

    if ($ conn-> spørring ($ sql) ===true) {

    ekko "ny plate opprettet vellykket";

    } annet {

    ekko "Feil:". $ sql. ""
    ". $ conn-> feil;

    }

    } annet {

    ekko "Beklager, det var en feil som lastet opp filen din.";

    }

    }

    $ conn-> close ();

    ?>

    `` `

    Forklaring:

    1. Databaseoppsett:

    - Etabler en forbindelse til MySQL -databasen din ved å bruke `MySQLI` -utvidelsen.

    - Bytt ut plassholdere som `brukernavn`,` passord` og `mydatabase` med din faktiske databaseopplysning.

    2. Filopplasting Håndtering:

    - Bruk Superglobal -matrisen `$ _Files` for å få tilgang til informasjon om den opplastede filen.

    - Sett opp en målkatalog (`$ Target_Dir`) der filen vil bli lagret.

    - Utfør grunnleggende validering:

    - Sjekk om den opplastede filen er et faktisk bilde (ved hjelp av `getImageSize`).

    - Sjekk om filen allerede finnes i målkatalogen.

    - Kontroller om filstørrelsen er innenfor tillatte grenser.

    - Tillat bare visse filformater (f.eks. JPG, PNG, GIF).

    3. Fillagring:

    - Hvis validering passerer, bruk `move_uploaded_file` for å flytte den midlertidige opplastede filen til målkatalogen.

    4. Databaseinnsetting:

    - Etter å ha lagret filen, utarbeide en SQL -spørring for å sette inn filinformasjonen i databasen din.

    - Dette inkluderer vanligvis filnavnet og banen til filen.

    - Bruk metoden `$ conn-> spørring` for å utføre SQL-spørringen.

    Viktige merknader:

    - Sikkerhet: Valider alltid brukerinngang og filopplastinger for å forhindre sikkerhetsproblemer som XSS -angrep eller filinjeksjon.

    - Databasetabell: Forsikre deg om at du har en passende databasetabell for å lagre filinformasjon (f.eks. `Files` -tabell med kolonner som` filnavn`, `file_path`,` file_size`, etc.).

    - Feilhåndtering: Håndter potensielle feil under filopplasting og innsetting av database. Vis passende meldinger til brukeren.

    - Filstørrelsesgrenser: Vurder å angi passende filstørrelsesgrenser for å forhindre overbelastning av server.

    - filtyper: Du kan endre de tillatte filtypene basert på applikasjonens krav.

    - Data Sanitisering: Sanitiser filnavnet og andre data før du lagrer den i databasen for å forhindre SQL -injeksjonsangrep.

    - Store filer: For å håndtere store filer, bør du vurdere å bruke teknikker som chunking eller streamingopplastinger.

    Husk å tilpasse dette kodebiten til det spesifikke databaseskjemaet og filopplastingskravene.

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan å analysere PHP Script i en ASP.net Hjemmeside…
    ·Slik konverterer en Array i PHP 
    ·Hvordan sende en PHP Image File 
    ·Hvordan velge verdien fra en valgliste til en annen lis…
    ·Hva er serveren som brukes til å kjøre PHP i Windows?…
    ·Hvordan legge en XML -fil med PHP 
    ·Hvordan lage en CV Database 
    ·PHP Flash Integrasjon Tutorial 
    ·Hvordan sortere en MySQL Query bruke ORDER BY 
    ·Slik installerer PHP Live Chat på en inOrbital Store 
      Anbefalte artikler
    ·Hvordan å feilsøke Perl 
    ·Opplæring for AJAX Pagination og jQuery i PHP 
    ·Java tutorial på Random Method 
    ·Hvordan endre fieldset Color 
    ·Hvordan Erklærer variabler i ActionScript 
    ·Hvordan lage et sjakkbrett i OpenGL 
    ·Hvordan aktivere og deaktivere en tekstboks Med Radio B…
    ·Hva er en standard for tegnkoding? 
    ·Hvordan lage en Tag Cloud i PHP 
    ·Hvordan konverterer jeg BCD til desimal Visual Basic 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/