der er to måder at gemme billeder på. Den mest almindelige måde er at gemme filnavnet i tabellen og uploade billedet i mappen.En anden måde er at gemme billedet direkte ind i databasen. Da udviklere normalt ikke bruger den anden metode, kan de blive forvirrede.

det er uden tvivl et meget godt valg at bruge Myskl til databaseinformation. Nogle gange er det mere praktisk at gemme billedet eller filen i databasen end i en separat mappe. I denne artikel lærer du, hvordan du gemmer billedet eller filen i databasen, og hvordan databasebilledet vises med det praktiske eksempel.

at gemme en uploadet fil i en database er mere kompleks del end blot at flytte en fil med move_uploaded_file. så i dag vil vi tjekke for lagring af en fil i databasen.Database giver specialiseret datatype til at gemme en stor mængde data, og at datatypen er BLOB.

Hvad er en BLOB?

BLOB datatype er et binært stort objekt, der kan indeholde en variabel længde af data.En BLOB bruges typisk til at gemme binære data og har fire typer:’

1. TINYBLOB
2. BLOB
3. MEDIUMBLOB
4. LONGBLOB

hovedforskellen mellem alle typer er længden af de respektive data kan gemmes.

hvis du vil gemme en fil i databasen, skal du oprette en tabel med datatypen BLOB, hvor filen kan gemmes ved hjælp af følgende sætning.Som BLOB står for Binary Large Object og det er en binær-sikker version af teksttypen, der betyder, at data ikke er læsbar tekst og ikke vil blive fortolket som læsbar tekst, mens den lagrede strengt binære data.

her gemmer jeg et billede i databasen i stedet for at flytte filen fra den midlertidige placering til en endelig mappe, så du skal læse indholdet og indsætte det i databasen.

Bemærk: BLOB-kolonner er store og små bogstaver, hvis du gemmer data i dem og derefter forsøger at søge i dem med en Myskl-forespørgsel.

eksempel:

her er tabellen struktur har to felter, først er autoincrement primære id og det andet felt er Blob for at gemme billedet.

1
2
3
4
5
6

Opret TABELFILER (
id int auto_increment primær nøgle,
file_data MEDIUMBLOB IKKE NULL
);

Dernæst har du brug for en internetgrænseflade til upload af et billede. Lad os oprette HTML-formular,der giver brugeren mulighed for at uploade en fil, som du vil gemme i databasen

1
2
3
4
5
6

<form name=” file “action=” filedb.php “method=” post “enctype=” multipart / form-data”>
<input type= “file” name=” file ” værdi=”” />
<input type=” submit “name=” Upload “value= “Upload”>
</form>

efter formular skal du oprette filedb.php-fil, der viser dig hovedkoden til at gemme filen i databasen. Her fread funktion læse filen eller billedet indhold og gemme indhold i Myskl databasen ved hjælp af myskl forespørgsel.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

// dette er den fil, vi skal tilføje den i databasen
$MY_FILE = $_FILES;
/ / for at åbne filen og gemme dens indhold i $file_contents
$file = fopen ($MY_FILE, ‘r’);
$file_contents = fread ($fil, Filstørrelse ($MY_FILE));
fclose ($file);
/* vi er nødt til at undslippe nogle stkarakter,der kan vises i file_contents, så gør det nu, før vi begynder forespørgslen.* /
$file_contents = addslashes ($file_contents);
// for at tilføje filen i databasen
mysl_connect(‘localhost’, ‘root’, “) eller die(“kan ikke oprette forbindelse til databasen.”);
mysl_select_db(‘test’) eller die(“kan ikke vælge DB.”);
søg(“indsæt i filer Indstil file_data=’$file_contents'”) eller dø(“Søg fejl:” . () . “<br><br>”. “KVL var: $ KVL<br > <br>”);
echo “fil indsat i filer tabel med succes.”;

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.