/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Viser sti og ikke billede
Fra : Peter Nicolaj


Dato : 31-07-08 18:51

Hej,

Jeg har lavet en htmlfomular med database.

Formularen indeholder to tekstfelter, et datofelt
samt et felt til billed upload. Det virker umiddelbart
som det skal, da det hele bliver postet.

Men når jeg ser mit resultat i min default.php,
vises der kun stien for det uploadet billed.

Hvordan får jeg det til at vise selve billedet?

Jeg har anvendt følgende script til at vise mine data:

/* Printer resultatet i HTML */
echo '<tr>';
echo '<td>' . $row[id] . '</td>';
echo '<td>' . $row[album] . '</td>';
echo '<td>' . $row[dato] . '</td>';
echo '<td>' . $row[producer] . '</td>';
echo '<td>' . $row[foto] . '</td>';
echo '</tr>';
}
echo '</table>';

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Bertel Lund Hansen (31-07-2008)
Kommentar
Fra : Bertel Lund Hansen


Dato : 31-07-08 19:26

Peter Nicolaj skrev:

> Jeg har anvendt følgende script til at vise mine data:
> echo '<td>' . $row[foto] . '</td>';

Du udskriver jo stien, og så er det den der vises.

Her vises et billede:

echo "<img src='$row[foto]' width='1' height='2' alt='beskriv
billedet' title='Evt. forklarende tekst der skal dukke op ved
hover'>";

Jeg ved ikke om det giver mening at lægge billedet inden i
tabellen, men det kan du jo gøre hvis du vil.

--
Bertel
http://bertel.lundhansen.dk/      FIDUSO: http://fiduso.dk/

Peter Nicolaj (31-07-2008)
Kommentar
Fra : Peter Nicolaj


Dato : 31-07-08 21:44

Ja kan jo se at rammerne for et billed kommer frem. Men
billederne bliver desværre stadig ikke vist.

Jeg bruger phpmyadmin og for billeder bruger jeg datatypen
'blob', kan der ligge et problem idet?


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Bertel Lund Hansen (31-07-2008)
Kommentar
Fra : Bertel Lund Hansen


Dato : 31-07-08 22:00

Peter Nicolaj skrev:

> Ja kan jo se at rammerne for et billed kommer frem. Men
> billederne bliver desværre stadig ikke vist.

Du er sikker på at der er præcis overensstemmelse mellem
filnavnet og det navn der bruges i img-kommandoen?

> Jeg bruger phpmyadmin og for billeder bruger jeg datatypen
> 'blob', kan der ligge et problem idet?

"Blob" siger mig ikke noget. Umiddelbart ville jeg sige at det
lyder som en sær type for et billede.

--
Bertel
http://bertel.lundhansen.dk/      FIDUSO: http://fiduso.dk/

Martin (31-07-2008)
Kommentar
Fra : Martin


Dato : 31-07-08 23:12

Bertel Lund Hansen wrote:
> Peter Nicolaj skrev:
>
>> Ja kan jo se at rammerne for et billed kommer frem. Men
>> billederne bliver desværre stadig ikke vist.

Altid en rigtig dårlig ide at gemme billeder i databasen, databaser er
lavet til tekst, og burde kun bruges til dette.

Gem hellere billedet på webserveren som en ganske normal fil, og gem så
stien og/eller billedets navn i databasen

>
> Du er sikker på at der er præcis overensstemmelse mellem
> filnavnet og det navn der bruges i img-kommandoen?
>
>> Jeg bruger phpmyadmin og for billeder bruger jeg datatypen
>> 'blob', kan der ligge et problem idet?
>
> "Blob" siger mig ikke noget. Umiddelbart ville jeg sige at det
> lyder som en sær type for et billede.
>

Blob er lidt ala et alm varchar felt, dog bare med binær kode.

Mads Lie Jensen (01-08-2008)
Kommentar
Fra : Mads Lie Jensen


Dato : 01-08-08 09:03

On Fri, 01 Aug 2008 00:11:30 +0200, Martin <martin@aarhof.invalid>
wrote:

>>> Ja kan jo se at rammerne for et billed kommer frem. Men
>>> billederne bliver desværre stadig ikke vist.
>
>Altid en rigtig dårlig ide at gemme billeder i databasen, databaser er
>lavet til tekst, og burde kun bruges til dette.

Sludder. Databaser er lavet til _data_. Billeder er også data.
På min hjemmeside bliver alle billederne gemt i databasen, det har
aldrig givet bøvl eller overbelastet server.

>Gem hellere billedet på webserveren som en ganske normal fil, og gem så
>stien og/eller billedets navn i databasen

Der er fordele og bagdele ved begge metoder.
Fordelen ved at have selve billedet i databasen er at når du sletter
info om billedet, så ryger selve billedet også ud.
Ligger billedet i filsystemet, så skal du selv huske at slette det fra
filsystemet når du sletter det i databasen.
--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
Gartneriet - http://www.gartneriet.dk/

Dan Storm (31-07-2008)
Kommentar
Fra : Dan Storm


Dato : 31-07-08 22:32

Peter Nicolaj skrev:
> Ja kan jo se at rammerne for et billed kommer frem. Men
> billederne bliver desværre stadig ikke vist.
>
> Jeg bruger phpmyadmin og for billeder bruger jeg datatypen
> 'blob', kan der ligge et problem idet?

Det er fordi at dit indhold i 'foto' feltet sansynligvis indeholder den
binære kode fra billedet; altså en laaang streng som ikke kan bruges til
noget medmindre man outputter det rigtigt.

f.eks:
/* Printer resultatet i HTML */
echo "<tr>\n";
echo "<td>" . $row["id"] . "</td>\n";
echo "<td>" . $row["album"] . "</td>\n";
echo "<td>" . $row["dato"] . '</td>\n";
echo "<td>" . $row["producer"] . '</td>\n";
echo "<td><img src="foto.php?id=" . $row["id"] . " class="foto"
alt=\"Beskrivende tekst\" /></td>\n";
echo "</tr>\n";
}
echo "</table>";


Samtidig opretter du en foto.php fil der indeholder noget ala (utestet):

<?php

   //forbind til MySQL og vælg database

   $id = $_GET["id"];
   $sql = "SELECT foto FROM dintabel WHERE id='".$id."'";
   $res = mysql_query($sql);
   $foto = mysql_result($res, 0, "foto");
   
   header("Content-Type: image/jpeg"); //bør laves dynamisk
   echo $foto;

?>

På den måde skulle du kunne få dit billede frem.

>
>


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Peter Nicolaj (02-08-2008)
Kommentar
Fra : Peter Nicolaj


Dato : 02-08-08 00:04

Mange tak intil videre. Har ikke fået det til at virke endnu, men giver det
lige et par chancer mere. Står lidt af med den denne sætning:

   header("Content-Type: image/jpeg"); //bør laves dynamisk
   echo $foto;
?>

Skal nok lykkes.

Spørger lige i forvejen om der nogen der har kendskab el. ved et sted hvor
jeg kan blive klog på hvordan jeg anvender min database på et CMSimple
website? Det officielle danske CMSimple forum kræver at man har købt en
licens, før man kan medvirke aktivt, og det er ikke lige tilfældet for mig.


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Dan Storm (02-08-2008)
Kommentar
Fra : Dan Storm


Dato : 02-08-08 15:29

Peter Nicolaj skrev:
> Mange tak intil videre. Har ikke fået det til at virke endnu, men giver det
> lige et par chancer mere. Står lidt af med den denne sætning:
>
>    header("Content-Type: image/jpeg"); //bør laves dynamisk
>    echo $foto;
> ?>

Formålet er at fortælle dig at hvis det nu var et GIF billede skulle der stå
header("Content-Type: image/gif");
istedet. ;)

Har du sikret dig at der ikke er nogle linieskift før og efter PHP koden?


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409083
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste