Avatar billede nickyc Nybegynder
17. juni 2005 - 09:02 Der er 1 kommentar og
1 løsning

vis billede fra database?

Hey allesammen...

Hvordan får jeg mit billede vist som jeg har i min database?

Mit upload script:
----------------
include("checklogin.php");
$kunde = $_REQUEST['kunde'];
$catid = $_REQUEST['catid'];
$opgaver = nl2br($_REQUEST['opgaver']);
$url = $_REQUEST['url'];
$status = $_REQUEST['status'];

if(isset($_REQUEST['submit']) && $_FILES['billede']['size'] > 0){
    $imagenavn = $_FILES['billede']['name'];
    $tmpName = $_FILES['billede']['tmp_name'];
    $imagesize = $_FILES['billede']['size'];
    $imagetype = $_FILES['billede']['type'];

$fp = fopen($tmpName, "r");
$content = fread($fp, filesize($tmpName));
$content = addslashes($content);
fclose($fp);

    if(!get_magic_quotes_gpc())
    {
        $filename = addslashes($filename);
    }

    include("config.php");   


$sql = "INSERT INTO portfolio (kunde, imagenavn, imagesize, imagetype, image, catid, opgaver, url, status) VALUES('$kunde', '$imagenavn', '$imagesize', '$imagetype', '$content' , '$catid', '$opgaver', '$url', '$status')";
    if(mysql_query($sql)) {
        echo "<script>document.location.href='oversigt-web.php'</script>";
    }
   
    else {
       
        echo "<script type='javascript'>alert('Der skete en fejl ved oprettelse af reference');";
       
    }
}
?>
-------------------------------

Og her er filen der skal vise tingene:
-------------------------------------

<?
include("checklogin.php");
include("config.php");

$sql = "SELECT * FROM portfolio ORDER BY kunde";
    $resultat = mysql_query($sql) or die("Cannot open database");
   
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>:::Login:::</title>
<style type="text/css">
a:link { font-family: Arial; font-size:10px; font-weight:bold; }
a:hover { background-color:#CCCCCC; color: #FFFFFF; }
h1 { font-family:Arial; font-size: 14px; color: #990000; }
td { vertical-align: top; font-family: Arial; font-size: 11px; }
input {
    background-image: url(../images/bg_site.jpg);
    font-family:Tahoma; font-size: 10px; color: #990000;}
</style>
<link href="../html/css/standard.css" rel="stylesheet" type="text/css" />
</head>

<body>
<p>&nbsp;</p>
<p>&nbsp;</p>
<table width="489" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><img src="../images/top_cntbox.gif" alt="" title="" width="489" height="10" /></td>
  </tr>
  <tr>
    <td style="background-image: url(../images/bg_cntbox.gif);">
      <? include("menu.php"); ?><br />
    <table width="470" align="center" border="0" cellpadding="0" cellspacing="3">
      <tr>
        <td width="90"><strong>Kunde</strong></td>
        <td width="90"><strong>Billede</strong></td>
        <td width="90"><strong>Opgaver</strong></td>
        <td width="90"><strong>URL</strong></td>
        <td width="90"><strong>Status</strong></td>
      </tr>
    </table>
      <table width="470" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td><hr />
    <?
    while ($myrow = mysql_fetch_assoc($resultat)) {
    $id = $_REQUEST['id'];
    $kunde = $_REQUEST['kunde'];
    $image  = $_FILES['image'];
    $opgaver = $_REQUEST['opgaver'];
    $url = $_REQUEST['url'];
    $status = $_REQUEST['status'];
    echo "<table width='470'><tr>";
    echo "<td width='90'>" . $myrow['kunde'] ."</td>";
    echo "<td width='110'><img src=" . $myrow['image'] ."</td>";
    echo "<td width'90'>" .nl2br(substr($myrow['opgaver'], 0, 15))."...</td>";
    echo "<td width='90'>".substr($myrow['url'], 0, 20). "...</td>";
    if($myrow['status'] == 1) {
        echo "<td width='90'><span style='color: green;'>Aktiveret</td>";
    }
    else {
        echo "<td width='90'><span style='color: red;'>Deaktiveret</td>";
    }
    echo "</tr><tr>";
    echo "<td width='90'><a href='rediger.php?id=" .$myrow['id'] ."'><img src='../images/icons/edit.gif' border='0' alt='Rediger' title='Rediger' /></a>        <a href='java script:slet(" . $myrow[id] . ");'><img src='../images/icons/delete.gif' border='0' alt='Slet' title='Slet' /></a></td>";
    echo "<td width='110'></td>";
    echo "<td></td><td></td><td></td></tr></table>";
}
    ?></td>
      </tr>
    </table>
    <div align="center">
      <script language="JavaScript">
    function slet(id) {
        if (confirm("Er du sikker på at du vil slette??")) {
            document.location = "delete.php?id=" + id;
        }
    }
    </script>
    </div></td>
  </tr>
  <tr>
    <td><img src="../images/bund_cntbox.png" alt="" title="" width="489" height="13" /></td>
  </tr>
</table>
</body>
</html>
---------------------------------


Når jeg kigger på denne side, også i billede feltet kommer der bare en helvedes masse mærkelige tegn, men intet billede??
Avatar billede coderdk Praktikant
17. juni 2005 - 09:57 #1
I stedet for:

echo "<td width='110'><img src=" . $myrow['image'] ."</td>";

Skal du have:

echo "<td width='110'><img src='vispic.php?id=" . $myrow['id'] ."'></td>";

og vispic.php:

<?php

    include("checklogin.php");
    include("config.php");

    header( 'Expires: 0' );

    $sql = "SELECT imagesize, imagetype, image FROM portfolio WHERE id = '" . mysql_escape_string( $_GET['id'] ) . "'";
    $resultat = mysql_query($sql) or die("Cannot open database");
    if ( $myrow = mysql_fetch_assoc($resultat) )
    {
        header('Content-type: ' . $myrow['imagetype']);
        header('Content-length: ' . $myrow['imagesize']);
        echo $myrow['image']
    }

?>
Avatar billede nickyc Nybegynder
20. juni 2005 - 15:47 #2
takker
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester