foto in database
dit is wat ik heb:
Op die manier kan je oneindig veel foto's aan een project hangen. Of je daadwerkelijk de foto wil opslaan in de database, of het pad/url/naam, moet je je nog even afvragen. Ikzelf zou het niet in de database doen, aangezien je dan altijd via PHP moet om de foto uit de database te halen. En dan moet je zelf rekening houden met de juiste headers, HEAD-requests, caching, e.d om het redelijk snel te houden. Als je de foto's gewoon als bestanden opslaat kan je Apache dat allemaal laten doen en die is daar zoveel beter in...
wel goeie tip van 2 tabellen;)
Code (php)
1
2
3
4
5
2
3
4
5
mysql_query("INSERT INTO projecten (naam, beschrijving) VALUES('portfolio', 'dit script zelf')");
$project_id = mysql_lastinsertid();
mysql_query("INSERT INTO fotos (project_id, pad) VALUES($project_id, 'http://...')");
$project_id = mysql_lastinsertid();
mysql_query("INSERT INTO fotos (project_id, pad) VALUES($project_id, 'http://...')");
En de foto's terugvinden?
dus zoals ik het had maar dan met foto? dat snap ik niet de rest wel;)
Zie Jelmers voorbeeld :-)
ik wil gewoon even weten hoe je een tabel insteld waar jee foto of een bestand in kunt doen.
kga het wel op die manier van jelmer doen maar wil het toch even weten.
Andere manier is MySQLi gebruiken om met je database te praten, en dan prepared statements. Vervolgens kan je met $stmt->bind_param('ib', $project_id, fopen($_FILES['upload']['tmp_name'], 'rb')) bijvoorbeeld je data aan je query hangen. Dan wordt de data apart naar MySQL toegestuurd, in stukjes, wat in principe dus goed gaat met grote bestanden omdat het bestand nooit in z'n geheel in het geheugen hoeft te zitten.
kweet alleen neit hoe het allemaal moet dus als iemand mij paar hints kan geven zou dat mooi zijn.:$
De grote vraag is waarom wil je de foto's zelf in de database hebben staan?
alleen ik zou echt niet weten hoe dat moet dus als iemand een beginnetje kan maken of mij een link naar een tutorial kan geven zou dat fijn zijn.
`nummer` int(10) NOT NULL auto_increment,
`omschrijving` varchar(30) NOT NULL,
`afbeelding` varchar(50) NOT NULL,
PRIMARY KEY (`nummer`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
INSERT INTO `afbeelding` (`nummer`, `omschrijving`, `afbeelding`) VALUES
(1, 'dit ben ik', 'images/ik.jpg');