Hej!!!!
Kan man göra så här?
<img src="bild.php?id=234">
och så visar den bilden på id=234 ????
Isåfall hur gör man?
Tack på förhand!
14 svar · 340 visningar · startad av Zacay
Hej!!!!
Kan man göra så här?
<img src="bild.php?id=234">
och så visar den bilden på id=234 ????
Isåfall hur gör man?
Tack på förhand!
Använd en SQL-fråga, typ
$sql = "SELECT * FROM tabell WHERE id = $id"
;)
------------------
"It's my poor friend me."
Jo det visste jag , men vad ska finna i databasen ???
ska man använda fopen, efter att den hämtat ngt i databasen?
Någon? =) ???
Antingen så lagrar du hela bilden i databasen eller så lagrar du endast metadata, dvs information, om bilden i databasen, själva bilden lagras i filsystemet.
Det första alternativet är mindre lämpligt för normala tillämpningar så därför är det smidigaste om du lagrar bilden i filsystemet.
Låt säga att du har en katalog vid namn /web/imagebank där alla bilder lagras.
Du har en databastabell, imgbank, där varje bild i katalogen beskrivs, denna kan se ut på följande vis:
ID - primärnyckel
FILENAME - bilden filnamn
GENRE - främmande nyckel till den bildgrupp som bilden tillhör
CREATOR - upphovsman
Om du har två bilder, nisse.jpg samt orvar.png i katalogen så kan tabellen se ut så här:
1, nisse.jpg, 1, 'Nisse Nilsson'
2, orvar.png, 1, 'Orvar Orvarsson'
För att visa dessa bilder med information om upphovsman samt bildgrupp så läser du helt enkelt in rätt rad med cascas SQL-sats och bygger upp URL-en till bilden (http://server/imagebank/\<skapad url till bilden> ) och langar in den i en <IMG SRC="">-tagg, under bilden kan du t.ex skriva ut namnet på upphovsmannen och annat trevlig info om bilden som du lagrat i databasen.
Om du bestämt vill att alla accesser till din bild MÅSTE gå genom din PHP-sida (alltså ingen direktlänkning till http://server/imagebank/nisse.jpg) så får du läsa in bilden med fopen(), sätta content-type till t.ex image/jpeg med Header("Content-type: image/jpeg) och sedan skriva bilden till klienten.
------------------
"To iterate is human, to recurse, divine" - L. Peter Deutch
Det smidigaste i det senaste fallet torde vara readfile...
------------------
"There's no such thing as a stupid question, only stupid people"
Låt oss anta att du skriver:
<img src="bild.php?id=234">
Sen skapar du en fil med namnet bild.php som ser ut såhär:
<?php
mysql_connect("host","username","password");
$mysql_result = mysql_query("SELECT img FROM IMAGES WHERE UID = $id");
while ($img = mysql_fetch_array($mysl_result)) {
$im = @ImageCreateFromGIF($img["img"]);
}
echo $im;
?>
Detta borde räcka, men som vanligt lämnas inga garantier.
Du kan ju anpassa scriptet så att du kan ladda olika bildformat. Å dessutom så kan du lägga till lite copyrightinfo å sånt på bilden!
// imagecreatefromjpeg(string img)
// imagecreatefrompng(string img)
------------------
TOTD: RTFM and THINK!
Gifstödet är borttaget numera...
------------------
"There's no such thing as a stupid question, only stupid people"
I know, men han kan ju ha en gammal installation.
Dessutom så la jag till raderna på slutet just därför! ;)
------------------
TOTD: RTFM and THINK!
[Redigerat av Mats95 den 13 aug 2001]
Hehe, jag har den senaste installationen..
tack för all er hjälp, ska försöka lista ut ngt snart när jag har tid,
=)) ni har varit jätte hjälpsamma!
Ha dé gött
Hej igen,
jag lcykades göra allt, men
har jag stött på ett problem!
<script language="javascript">
<!--
intro_on = new Image();
// Sökvägen till bilderna som det skall bytas emellan...
//---------------------------------------
intro_on.src = "<?php include('bild.php'); ?>";
//---------------------------------------
setTimeout("byt1()", 10000);
// 10000 milisekunder = 10 sekunder
function byt1()
{
if (document.images)
{
document.intro.src= '<?php include('bild.php'); ?>';
}
setTimeout("byt1()", 10000);
}
//-->
</script>
</head>
<body>
<img src="<?php include('bild.php'); ?>" name="intro">
När jag kör det så ersätts alla
<?php include(bild.php); ?>
MOT
images/bild.jpg
Eftersom bild.php ,
men då kommer javascriptet vara helt onödig!
bild.php gör bara en echo(bildaddress).
Jag vill istället lura html och javascriptet att bild.php är själva bilden!
bild.php ska returnera bilden. ingen address på bilden =)
tack igen
intro_on.src = "bild.php";
:q
------------------
"There's no such thing as a stupid question, only stupid people"
Det där funkar inte eftersom bild.php är inte en bild ,
jag måste ju göra så att bild.php returnerar en bild .. att den ska fungera som en bild (gif eller jpeg)
=)
I bild.php:
Sätt Content-type till image/jpeg eller gif eller vad det nu må vara.
Läs in bilden från lämplig datakälla (filsystem/databas)
Skriv ut bilden.
Klart! Nu är bild.php en bild vad webbläsaren anbelangar.
------------------
"To iterate is human, to recurse, divine" - L. Peter Deutch
Content type har jag redan tänkt på =)))
men sen var det funktionen som läser in bilden ifrån databasen.
Jag kan ta fram en address ifrån en databas,
sen att göra det till en bild med php kan jag inte =))
du kanske har en liten bit kod till mig eller ?
MVH
Zacay