Autor Zpráva
corsic
Profil *
Dobrý dne, snažím se vypsat obrázek z databáze, kde mám slopec obrazek typu BLOB

zdrojak mam :

<?php
ini_set('session.use_trans_sid', 1);
ob_start();
require_once "../db.php"; // pripoji k databazi
require_once "../page.php";
require_once "../function.php";

$id_obrazku = 0;
echo $sql = "SELECT obrazek FROM images WHERE img_id='$id_obrazku'";

$vysledek_sql = mysql_query($sql,$connect);
if (!$vysledek_sql)
{
echo mysql_errno($id_spojeni).': '.mysql_error($connect).'<br>';
die('Nepodařilo se načíst obrázek.');
}
$data = mysql_fetch_assoc($vysledek_sql);
if (!$data)
die('Nemáme žádný obrázek.');
header('Content-Type: image/jpeg');
echo $data["obrazek"];
mysql_close($connect);
?>

nezobrazí se mi nesmyslné znaky, ale zobrazí se pouze orámovaná část a obrázek nenalezen, nevíte co s tím, myslím si že chyba bude někdě za header a dál, ale bohužel nevím jak na to :-( Pomůžete mi prosím?
ninja
Profil
Kdyz si obrazek ulozis, ma validni obsah? Odpovida hlavicka a velikost?
corsic
Profil *
při vkládání jsem použil takto

<?php
ini_set('session.use_trans_sid', 1);
require_once "../db.php";
require_once "../page.php";
require_once "../function.php";
$f = fopen('a.jpg','rb');
$data = fread($f,filesize('a.jpg'));
$sql = "INSERT INTO images(obrazek) VALUES('".mysql_escape_string($data)."')";
$vysledek_sql = mysql_query($sql,$connect);
if (!$vysledek_sql)
{
echo mysql_errno($connect).': '.mysql_error($connect).'<br />';
die('Nepodařilo se vložit obrázek.');
}
else
echo 'Podařilo se vložit obrázek.';
mysql_close($connect);
?>
nexus
Profil
corsic mozna se pletu, ale mam pocit, ze v phpmyadmin lze nastavit content-type, mas jej nastaveny? to by mohlo byt reseni.. ale nevim, neni tu jestli to mas nastaveny nebo ne ...
corsic
Profil *
to nastaveno nemam :-( a hlavne ani nevim kde :-(

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: