22. maj 2004 - 22:51Der er
11 kommentarer og 1 løsning
Billed sti
Hej alle Jeg er ved at lave et projekt så behøver lidt hjælp. Jeg skal have lavet en database hvor en sti til en billed fil er gemt. Altså fx /tmp/billed/filnavn. Har læst der er mange der siger at det er en dum ide at gemme selve billed filen i databasen, så hvordan gør man det på den anden m`åde ?
jeg ville gør det på den måde at lave en form hvor du kan uploade billederne direkte til serveren: omdøber billederne så deres filnavn hedder det ID som det passer med i databasen + det (extension) format .gif .jpg .bmp osv som det måtte have.
så du skal bl.a. have nedenstående felter i din database
ID : int autoincrement extension : VARCHAR
Du kender jo det sted på serveren hvor billederne er uploadet via din form,
Jeg tænkte nu ikke på en form, Mere hvordan databasen skal se ud. Altså hvordan man skriver det ind så i tablen er linket til et billed. er det til at forstå ? eller skal jeg forklare mig nbedre :P
Du kan godt nøjes med filnavn alene, hvis du vil. Så skal feltet være UNIQUE, d.v.s ingen andre filer kan hedde det samme.
I dit script, definere du så stien til billedet, $billedesti = "/images/";
så henter du filnavne fra db'en,
$getpic = mysql_query("SELECT `filnavn` FROM `billeder`") or die (mysql_error()); while($vis = mysql_fetch_object($getpic)) { echo"<img src=\"". $billedesti . $vis->filnavn ."\">"; }
Har selv lige lavet et "galleri", hvor jeg har id, filnavn, kategori i DB'en id bruges a'la phpwiz, 1.jpg som så er thumbnail til selve billedet, "filnavn" kategori bruges til at lave, ja, kategorier! :O) M.h.t. hvornår filen er lavet, kan du bruge filemtime() til at finde tidspunkt.
Du har fat i noget vallemanden. Det er hvordan jeg skal lave min database. Ikke hvordan jeg for det frem på en side, men hvordan databasen skal se ud når man taster det ind i mysql
Når du er logget ind, klikker du på dit databasenavn. Derefter klikker du på "Sql", så får du et textarea og en "gennemse". hvis du bruer textarea'et, kan du copy/paste flg.
CREATE TABLE `galleri` ( `id` mediumint(6) NOT NULL auto_increment, `filnavn` varchar(160) NOT NULL default '', `kategori` varchar(160) NOT NULL default '', `tekst` text NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `filnavn` (`filnavn`) ) TYPE=MyISAM AUTO_INCREMENT=20 ;
Så får du en tabel, "galleri", hvor, "id" øges med en hver gang du laver et nyt row. "filnavn" er navnet på filen, og er unikt, altså ikke to filer med samme navn "kategori" til at inddele billeder i kategorier "tekst" til at gemme evt. text til billedet.
Tak for det :) det noget jeg kunne bruge. Et sidste spørgsmål. Hvad betyder "default" altså hvorfor skal det skrives med ?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.