IT NEWS PC REVUE PC FORUM FreeBSDInternet time: @063
Obsah fóra
Pravidlá  •  Kontakt  •  Prihlásenie  •  Registrácia

Spoločnosti Online s.r.o.

Ponúkame čisté spoločnosti. Obchodný register vybavíme za vás! www.spolecnostionline.cz

Dom na dedine blízko Trnavy

postavený svojpomocne. Dom som poznala z fotografií a architektova navigácia mojdom.zoznam.sk

Aktuálna novinka

Zisti pravdu o stravovaní! Vyšetrovanie odhalilo tajomstvo dokonalého tela. www.news2channel.net

Pridaj sa a vyhraj iPad

Tvoj názor sa ráta a oplatí! Zarobte si vyplnením ankety na internete www.marketagent.com

Našiel som spôsob bieliť zuby

Podarilo sa mi vybieliť si zuby bez drahých procedúr u zubára. www.zuzaninblog.com

Problém s uložením miniatur do db

Zaslať odpoveď
AutorSpráva
majoha
Užívateľ
Užívateľ

Založený: 04.01.2011
Príspevky: 8

PríspevokZaslal: Po 07.11.11 22:04Odpovedať s citátomNávrat hore

Ahojte,mám tento kód:
kód:
<?php

require "spojeniee.php";
 
$maxFileSize = "1000000"; // 1 MB file size

$image_array      = array("image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png");

$fileType = $_FILES['obrazok']['type'];
 
$msg = '';

$original = $_FILES [ 'obrazok' ][ 'tmp_name' ];

$velkost = getimagesize($original);

$sirka = $velkost[0];
 
$vyska = $velkost[1];

$tn_sirka=$velkost[0];
$tn_vyska=$velkost[1];
$max_rozmer=500;
       if($tn_sirka>$max_rozmer){
        $tn_vyska=$tn_vyska/($tn_sirka/$max_rozmer);
        $tn_sirka=$max_rozmer;
       }
       if($tn_vyska>$max_rozmer){
        $tn_sirka=$tn_sirka/($tn_vyska/$max_rozmer);
        $tn_vyska=$max_rozmer;
       }


$org = ImageCreateFromJpeg($original);

$tn = ImageCreateTrueColor($tn_sirka,$tn_vyska);
 
ImageCopyResized($tn,$org,0,0,0,0,$tn_sirka,$tn_vyska,$velkost[0],$velkost[1]);
ob_start ();
ImageJpeg($tn);
$image_thumb = ob_get_contents ();
ob_end_clean ();



if(@$_POST['submit'])
{

if (in_array($fileType, $image_array))
{

 if(is_uploaded_file($_FILES['obrazok']['tmp_name']))
 {
 
         if($_FILES['obrazok']['size'] < $maxFileSize)

            {
 
                  $obrazok =addslashes (file_get_contents($_FILES['obrazok']['tmp_name']));


        $sql = "INSERT INTO obrazky (obrazok,odkaz,type,image_height,
image_width,thumb_width,thumb_height,image_thumb) VALUES
     ('$obrazok','$_POST[odkaz]','$fileType','$vyska',
'$sirka' , '$tn_sirka' , '$tn_vyska','$tn' )";
             
        mysql_query($sql) or die(mysql_error());
      $msg = "Obrázok sa úspešne nahral";
         }
     else
    {
     
        $msg = 'Obrazok prekročil maximálny limit';
      
        }
   }
}
else
{
$msg = 'Neplatný obrázok ';
}

}
?>

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Language" content="sk">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">

     <body>
    <span style="color:#FF0000"><?php echo $msg; ?></span><br />

        <h3>Vyberte obrazok ktorý chcete nahrať</h3>
 
         <form enctype="multipart/form-data" action="" method="post">
              E-mail: <input type="text" name = "odkaz"><br>
             <input name="obrazok" type="file" />
            <input type="submit" value="Odoslať"  name="submit"/>
        </form>
    </body>
</html>

nedarí sa mi uložiť miniatúru do databázy.Do "image_thumb"mi namiesto Súbor JPG uloží súbor typu Binary File.Naozaj neviem kde robím chybu. Vopred ďakujem za každú radu.
Zobraziť informácie o autoroviOdoslať súkromnú správu
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: Po 07.11.11 22:08Odpovedať s citátomNávrat hore

Ako si zisťoval, že to nie je jpg, ale je to binary file?

PS: Myslíš si, že je dobrý nápad dávať obrázky do DB? Ak by to boli "normálne" súbory, tak by ich posielal priamo webový server (pravdepodobne Apache) a server by to zaťažovalo oveľa menej (navyše by si prehliadač mohol ten obrázok uložiť do cache; síce to by si mohol dorobiť aj pri použití DB, ale pochybujem, že to tam máš).
Zobraziť informácie o autoroviOdoslať súkromnú správu
majoha
Užívateľ
Užívateľ

Založený: 04.01.2011
Príspevky: 8

PríspevokZaslal: Ut 08.11.11 21:45Odpovedať s citátomNávrat hore

Po kliknutí na obrázok v databáze mi ukáže akého typu je súbor.
Zobraziť informácie o autoroviOdoslať súkromnú správu
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: Ut 08.11.11 22:24Odpovedať s citátomNávrat hore

V čom to pozeráš? Datábáze je úplne jedno, aké binárne dáta do nej ukladáš, ty sa musíš postarať, aby si klientovi povedal, čo to vlastne je. Takže ak tam chceš dávať rôzne typy obrázkov, musíš si uložiť aj to, o oký typ ide, aby si potom vedel klientovi poslať správny MIME typ.
Stále ale platí, že ukladať obrázky do DB nie je dobrý nápad (a netuším, k čomu to má slúžiť).
Zobraziť informácie o autoroviOdoslať súkromnú správu
majoha
Užívateľ
Užívateľ

Založený: 04.01.2011
Príspevky: 8

PríspevokZaslal: Ut 08.11.11 22:52Odpovedať s citátomNávrat hore

V db mám uložený originál +miniatúru.Originál sa dá zobraziť ale miniatúra nie.
Čo sa tíka ukladania údajov do DB,ja si myslím že pre mňa je to dobré riešenie.
Zobraziť informácie o autoroviOdoslať súkromnú správu
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: Ut 08.11.11 23:00Odpovedať s citátomNávrat hore

A aspoň tam máš vyriešenú tú možnosť cache-ovania?

Inak v tom INSERT máš premennú $tn. Nemala by tam byť náhodou premenná $image_thumb?
Zobraziť informácie o autoroviOdoslať súkromnú správu
neopagan
Užívateľ
Užívateľ

Založený: 07.08.2006
Príspevky: 681

PríspevokZaslal: St 09.11.11 14:36Odpovedať s citátomNávrat hore

do dtb by som odporucal vkladat len cestu k obrazkom a k miniaturam.

Popripade existuje funkcia, ktora ti automaticky vytvori miniaturu a ulozi ju docasne do cache priecinka, takze napr. ja ziadne miniatury do dtb nedavam...
Zobraziť informácie o autoroviOdoslať súkromnú správu
Zobraziť príspevky z predchádzajúcich:    
Zaslať odpoveď
Nemôžete pridávať nové témy do tohto fóra.
Nemôžete odpovedať na témy v tomto fóre.
Nemôžete upravovať svoje príspevky v tomto fóre.
Nemôžete mazať svoje príspevky v tomto fóre.
Nemôžete hlasovať v tomto fóre.

Powered by phpBB 2.x.x © 2005 - 2012 PCforum, webhosting by WebSupport, edited by JanoF

SEO - optimalizácia pre vyhľadávače

Freebsd