Poslao: 05 Jun 2008 12:57
|
offline
- vladobk

- Građanin
- Pridružio: 11 Feb 2006
- Poruke: 166
- Gde živiš: Loznica
|
taman sam pomislio da nesto znam kad problem sa slikom mnogo sam googlao i slaba vajda evo mog koda koji ne radi sa blob poljem.
pozzzzz
[Link mogu videti samo ulogovani korisnici]
Dopuna: 05 Jun 2008 12:57
nesto sam uspeo ali mi prikazuje samo karaktere umesto slike. Prvo sam klreirao tablu
- $d_query="CREATE TABLE `testblob` (
- `id` int(11) NOT NULL auto_increment,
- `image_name` varchar(100) default NULL,
- `image_size` int(100) default NULL,
- `image_type` longblob,
- `image` text,
- PRIMARY KEY (`id`)
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci";
-
- echo"<br>SQL query: <br>$d_query<br>";
- mysql_query($d_query);
- echo "<br>Pravim tabelu u bazi podataka..... OK<br>";
pa uupload
- <body>
- <form method="post" enctype="multipart/form-data">
- <input type="hidden" name="MAX_FILE_SIZE" value="2000000">
- <p>
- <input name="userfile" type="file" id="userfile2">
- <input name="upload" type="submit" class="box" id="upload2" value=" Upload ">
- </p>
- </form>
- </body>
- </html>
- <?php
- if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0)
- {
- $fileName = $_FILES['userfile']['name'];
- $tmpName = $_FILES['userfile']['tmp_name'];
- $fileSize = $_FILES['userfile']['size'];
- $fileType = $_FILES['userfile']['type'];
- $fp = fopen($tmpName, 'r');
- $content = fread($fp, filesize($tmpName));
- $content = addslashes($content);
- fclose($fp);
- if(!get_magic_quotes_gpc())
- {
- $fileName = addslashes($fileName);
- }
- $link = @mysql_connect("localhost", "", "") OR DIE (mysql_error());
- @mysql_select_db ("test") OR DIE ("Unable to select db".mysql_error());
- $query = "INSERT INTO testblob (image_name, image_size, image_type, image) ".
- "VALUES ('$fileName', '$fileSize', '$fileType', '$content')";
- mysql_query($query) or die('Greska! Upit neuspesan');
- echo "<br>File $fileName uploadovan!<br>";
- }
- ?>
i prikaz
- // Ispisujemo
- while ( $row = mysql_fetch_array($query) ) {
- $id = $row["id"];
- $image_type = $row["image_type"];
- $image_blob = $row["image"];
- echo"
- <table width='500' border='1' align='center'>
- <tr>
- <td width='500'>redni broj slike $id tip slike $image_type <br></td>
- </tr>
- <td width='500'><img src='$image_blob' width='200' height='200'></td>
- </tr>
- </table>";
- }
gde je greska?
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 05 Jun 2008 23:02
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
Ovaj content ...src='$image_blob'... odnosno SRC ti mora biti odvojeni file kojem ces recimo proslijediti ID i koji ce ti generisati sliku.
moraces da koristis header();
Ako bude problema javi.
|
|
|
|
Poslao: 07 Jun 2008 17:58
|
offline
- vladobk

- Građanin
- Pridružio: 11 Feb 2006
- Poruke: 166
- Gde živiš: Loznica
|
- // Ispisujemo
- while ( $row = mysql_fetch_array($query) ) {
- $id = $row["id"];
- $image = $row["image"];
- $image_blob = $row["image_blob"];
-
- echo" Redni broj $id <br>";
- echo" Ime slike $image<br>";
-
- /////echo" SLIKA $image_blob <br>";
- header('Refresh: 0; url=prikaz1.php?id=1');
heder output started inffo........????'''
ajd pomozi
|
|
|
|
Poslao: 07 Jun 2008 20:34
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
- // Ispisujemo
- while ( $row = mysql_fetch_array($query) ) {
- $id = $row["id"];
- $image_type = $row["image_type"];
- $image_blob = $row["image"];
- echo"
- <table width='500' border='1' align='center'>
- <tr>
- <td width='500'>redni broj slike $id tip slike $image_type <br></td>
- </tr>
- <td width='500'><img src='slika.php?id={$id}' width='200' height='200'></td>
- </tr>
- </table>";
- }
a file slika.php bi ti izgledala ovako
- <?php
- $ID = (int) $_GET['id'];
- $link = @mysql_connect("localhost", "", "") OR DIE (mysql_error());
-
- list( $ImageName, $ImageContent ) = @mysql_fetch_row(
- @mysql_query( "SELECT image_name, image FROM test.testblob WHERE id={$ID} LIMIT 1", $link ));
- $Parts = explode('.', $ImageName );
- $Extenzija = $Parts[ (count($Parts)-1) ];
- header("Content-Type: image/{$Extenzija}");
- print $ImageContent;
-
- ?>
Mislim da ti je sad jasnije sta sam htio reci.
Inace ovo nije dobar nacin za cuvanje slika. Kada je uploadujes, kopiras je u neki folder a u bazi samo cuvas putanju do nje.
|
|
|
|
Poslao: 09 Jun 2008 13:11
|
offline
- vladobk

- Građanin
- Pridružio: 11 Feb 2006
- Poruke: 166
- Gde živiš: Loznica
|
sadami tvoj kod prikaze mesto za sliku i crveni krstic.
imas li neki dobar link?
ja radim sa php 4.39
Dopuna: 09 Jun 2008 13:11
mozda mi nije dobro konfigurisana baza a mozda nisam dobro ni upisao
|
|
|
|
Poslao: 09 Jun 2008 14:45
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
Brate ne treba ti link, ali sledeci put pokusaj sam. Prvo pogledaj query za kreiranje baze
- `image_type` longblob,
- `image` text,
Mislim da si zamislio da ti image bude longblob?
Kada to ispravis, slika.php mozes ostaviti, a mozes staviti i ovu bolju verziju, posto nisam primjetio da cuvas image_type.
Znaci:
- <?php
-
- $ID = (int) $_GET['id'];
- $link = @mysql_connect("localhost", "", "") OR DIE (mysql_error());
-
- list( $ImageType, $ImageContent ) = @mysql_fetch_row(
- @mysql_query( "SELECT image_type, image FROM test.testblob WHERE id={$ID} LIMIT 1", $link ));
- header("Content-Type: {$ImageType}");
- print $ImageContent;
-
- ?>
I ovo ima da leti
|
|
|
|
Poslao: 09 Jun 2008 18:36
|
offline
- vladobk

- Građanin
- Pridružio: 11 Feb 2006
- Poruke: 166
- Gde živiš: Loznica
|
uradio sam ponovo i isto evo ovako create:- <?
- $dbhostname = "localhost";
- $dbusername = "";
- $dbpassword = "";
- $database = "test";
- $tabla = "testblob";
-
- mysql_connect ($dbhostname , $dbusername , $dbpassword) or die("nema veze sa MySQL");
- mysql_query(" CREATE DATABASE " .$database ) or die("ne mogu da kreiram bazu $database ili ona postoji");
-
- $dbname =
- mysql_select_db ($database) or die ("ne mogu selektovati bazu $database ");
- echo "selektovana baza $database ";
-
-
-
- $d_query="CREATE TABLE `testblob` (
- `id` int(11) NOT NULL auto_increment,
- `image_name` varchar(100) default NULL,
- `image_size` int(100) default NULL,
- `image_type` int(100) default NULL,
- `image` longblob,
- PRIMARY KEY (`id`)
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci";
-
- echo"<br>SQL query: <br>$d_query<br>";
- mysql_query($d_query);
- echo "<br>Pravim tabelu u bazi podataka..... OK<br>";
-
- ?>
uppload:
- <form method="post" enctype="multipart/form-data">
- <input type="hidden" name="MAX_FILE_SIZE" value="2000000">
- <p>
- <input name="userfile" type="file" id="userfile2">
- <input name="upload" type="submit" class="box" id="upload2" value=" Upload ">
- </p>
- </form>
- </body>
- </html>
-
- <?php
- if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0)
- {
- $fileName = $_FILES['userfile']['name'];
- $tmpName = $_FILES['userfile']['tmp_name'];
- $fileSize = $_FILES['userfile']['size'];
- $fileType = $_FILES['userfile']['type'];
-
- echo"fileName --- $fileName<br>";
- echo"tmpName --- $tmpName<br>";
- echo"fileSize --- $fileSize<br>";
- echo"fleType --- $fileType<br>";
-
- $fp = fopen($tmpName, 'r');
- $content = fread($fp, filesize($tmpName));
- $content = addslashes($content);
- fclose($fp);
-
- if(!get_magic_quotes_gpc())
- {
- $fileName = addslashes($fileName);
- }
-
- $link = @mysql_connect("localhost", "", "") OR DIE (mysql_error());
- @mysql_select_db ("test") OR DIE ("Unable to select db".mysql_error());
-
- $query = "INSERT INTO testblob (image_name, image_size, image_type, image) ".
- "VALUES ('$fileName', '$fileSize', '$fileType', '$content')";
-
- mysql_query($query) or die('Greska! Upit neuspesan');
- echo "<br>File $fileName uploadovan!<br>";
- }
- ?>
prikaz:
- // Ispisujemo
- while ( $row = mysql_fetch_array($query) ) {
- $id = $row["id"];
- $image = $row["image"];
- $image_type = $row["image_type"];
-
- echo"
- <table width='500' border='1' align='center'>
- <tr>
- <td width='500'>redni broj slike $id <br></td>
- </tr>
- <td width='500'><img src='slika.php?id=($id}' width='200' height='200'></td>
- </tr>
- </table>";
- }
slika:
- $ID = (int) $_GET['id'];
- $link = @mysql_connect("localhost", "", "") OR DIE (mysql_error());
-
- list( $ImageType, $ImageContent ) = @mysql_fetch_row(
- @mysql_query( "SELECT image_type, image FROM test.testblob WHERE id={$ID} LIMIT 1", $link ));
- header("Content-Type: {image/$ImageType}");
- print $ImageContent;
prikaze mi mesto za sliku i crveni krstic, a kad citam sliku ovako
- <td width='500'><img src='$image' width='200' height='200'></td>
onda prikaze samo karaktere, mozda je grreska u poljima baze
|
|
|
|
Poslao: 09 Jun 2008 21:19
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
Uh brate nista ti ovo ne kontas.
Vidi ovo ti je gore gotovo rjesenje, meni radilo.
Kazes
Citat:mozda je grreska u poljima baze
Pa imas 5-6 polja i kazes mozda je greska, pa za 1,4 sekundi to skontas da li je greska.
Sto ti je image_type int, treba valjda varchar, ovo mi sve izgleda kao da hoces da se zajeb... ?
I dalje, sa cim gledas da li ti je baza - tabela kreirana?
Budi siguran za bazu, a za ostalo se ne brini.
|
|
|
|
Poslao: 11 Jun 2008 11:36
|
offline
- vladobk

- Građanin
- Pridružio: 11 Feb 2006
- Poruke: 166
- Gde živiš: Loznica
|
nije mi do sale u tome i jeste fazon kako da definisem koje polje za sliku do sada sam radio samo sa tekstom ,ovo je moj rad
[Link mogu videti samo ulogovani korisnici]
Bazu i table gledam total komanderom i koji alat preporucujes
|
|
|
|
Poslao: 11 Jun 2008 14:54
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
Ja vec par godina koristim Navicat for MySQl, ali ako ti nije do placanja skini Mysql Front,
|
|
|
|