ubacivanje i citanje slike iz baze pomocu php-a

1

ubacivanje i citanje slike iz baze pomocu php-a

offline
  • Code Developer
  • Pridružio: 23 Okt 2011
  • Poruke: 163

Napisano: 04 Avg 2012 17:03

Probao sam da ubacim sliku u mysql bazu, uspeo sam to, ubacio sam celu sliku i kad pokusam preko mysql monitora da je prikaze pocne odmah da brljavi, ne moze je ocitati. Problem je sada da je ocitam. Googlao sam i nasao da sliku treba staviti u folder a u bazu samo link. Molim vas za pomoc ako neko ima resenje!
UNAPRED HVALA!

Dopuna: 05 Avg 2012 13:18

Evo da ne bude da odmah cekam sve na gotovo, pokusao sam po ko zna koji put da uradim ali ne ide. Sa ovim kodom mi ne prepoznajemo ovo "image" kod "$_FILES['image']['tmp_name']" sto bas i nema logike.
Ako mi neko moze pomoci bio bih mu zahvalan!

Kod je sledeci:
<html>
<head>
<title>Upload aa image</title>
</head>
<body>

<form action="index.php" method="POST" enctype="multipart/form=data">

File:
<input name="image" type="file"> <input type="submit" value="Upload">
</form>

<?php
error_reporting(E_ALL);
//konektovanje na odredjenu bazu
$con = mysql_connect("localhost","root","");
mysql_select_db("a", $con);

if (!$con)
{
exit('Could not connect: ' . mysql_error()); // ispis greske ako nije uspostavljena konekcija sa bazom
}

// fileproperties
$file = $_FILES['image']['image'];

if(!isset($file))
echo "Please select an image!";
else
{
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name = addslashes($_FILES['image']['tmp_name']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
}

if($image_size == FALSE)
echo "To nije slika";
else
{


}


?>
</body>
</html>



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • C# and PHP Developer
  • Pridružio: 16 Feb 2011
  • Poruke: 1627
  • Gde živiš: Pancevo

Napisano: 05 Avg 2012 15:06

Covek ti u bazu ubacujes ime (blob, vch) type.

Evo ti koraci:

1. Uploduj sliku (proveri dimenzije, odredi upload dir gde ce slika biti smestena.
2. Ako je slika uspesnno uploudovana uzimas nejno ime i INSERT u bazu (znaci samo ime slike)
3. Citas sliku samo definises putanju do upload dir-a i izvuces ime iz baze.

primer :

$path = "root/upload/"; <?php foreach($query->result() as $key => $value): ?> <img src = "<?php echo $path. $value" border = "0"> <?php endforeach; ?>

Pisem iz glave napamet, na isti nacin i linkujes, ako oces da prikazes odredjenu sliku a ne sve onda je grabis isto sa SELECT i WHERE klauzom "WHERE imagename = <imeslike> ili <ID>

Dopuna: 05 Avg 2012 15:10

- http://cookbooks.adobe.com/post_Upload_images_to_a.....16609.html
- http://www.daniweb.com/web-development/php/code/30.....l-database
- http://stackoverflow.com/questions/450876/upload-i.....-with-othe
- http://stackoverflow.com/questions/10365147/trying.....-php-mysql



offline
  • Code Developer
  • Pridružio: 23 Okt 2011
  • Poruke: 163

Sve sam pokusavao, al i dalje mi ne ide, uporni mi i dalje prikazuje sl gresku: Undefined index: image in C:\wamp\www\novo\browserpicsrc.php on line 8 ...

A var_dump($_FILES); mi vrati sledece: array empty

mycity.rs/must-login.png

mycity.rs/must-login.png

mycity.rs/must-login.png

offline
  • C# and PHP Developer
  • Pridružio: 16 Feb 2011
  • Poruke: 1627
  • Gde živiš: Pancevo

Izguglaj tu gresku i znaces sta ona znaci. Nemozemo mi ovde da vam crtamo sve. Nedefinisani index, znaci da slika nije definisana nije primila neku vrednost. vrednost je = 0;

offline
  • Code Developer
  • Pridružio: 23 Okt 2011
  • Poruke: 163

Uspeo sam da uradim formu i kod da ubacivanje u folder. Nikako ne mogu sad samo da uzmem taj naziv slike i da ga ubacim u bazu, hmm.
Koristio sam move_uploaded_file funkciju: nikako ne znam sta mi ide u $path promenljivu ...
if (move_uploaded_file($file['tmp_name'], $path)) {
// Move succeed.
} else {
// Move failed. Possible duplicate?
}

offline
  • Pridružio: 16 Jan 2010
  • Poruke: 241
  • Gde živiš: Zemun

Pa to ti je putanja, odnosno folder, gde ćeš smestiti sliku koju podižeš na server.

Citat:bool move_uploaded_file ( string $filename , string $destination )

Citat:$destination - The destination of the moved file.

U ovom delu unesi putanju do foldera gde ćeš smestiti sliku ili neki drugi fajl.

offline
  • Code Developer
  • Pridružio: 23 Okt 2011
  • Poruke: 163

Ovaj kod mi ubacuje u bazu:

$con = mysql_connect("localhost","root","");
mysql_select_db("a", $con);

if (!$con)
{
exit('Could not connect: ' . mysql_error()); // ispis greske ako nije uspostavljena konekcija sa bazom
}


$path = "/home/httpd/html/index.php";
$file1 = basename($path); // ubacuje "index.php"
$file2= basename($path, ".php"); // ubacuje "index"

echo "$file1" ."<br />";
echo "$file2" ."<br />";

$query = ("insert into moja values ('".''."', '" . mysql_real_escape_string($file2) . "')");

$result = mysql_query($query, $con);

if ($result) {
echo 'Uspelo je ubacivanje u bazu';
//header( "refresh:6;url=content.php" );
} else {
//echo "<p>Ne valja ubacivanje u bazu</p>";
echo "<p>" . mysql_error() . "</p>";

}

mysql_close();

sad mi je problem ovaj deo $path = "/home/httpd/html/index.php"; sta tu trebam staviti da bi mi citao iz tog foldera slike tj putanju, da on sam prepozna sta se nalazi u folderu neku univerzalnu promenjivu staviti? Hvala na dosadasnjoj pomoci! Ziveli

offline
  • C# and PHP Developer
  • Pridružio: 16 Feb 2011
  • Poruke: 1627
  • Gde živiš: Pancevo

Covek necitas sta sam ti u drugoj poruci objasnio...
Vidim da spominjes $filename. Ta promenljiva verovatno ti sadrzi ime slike. znaci ubacujes je u bazu koju zelis i hvatas vrednost iz $filename. Kada oces da pokazes slike samo izlistas slike <imena> iz baze i u img src tagu dodas putanju do foldera gde su slike i dodas $filename ili ako je foreach petlja onda $key ili $value.

offline
  • Code Developer
  • Pridružio: 23 Okt 2011
  • Poruke: 163

Uspeo sam sve. HVALA VAM! Ziveli

Jos jedno pitanje, u bazu upisujem samo ime slike ili i njenu extenziju?

offline
  • lnenad  Male
  • Stručni saradnik
    Web
  • Nenad
  • Arhitetak
  • Pridružio: 16 Jan 2007
  • Poruke: 2860
  • Gde živiš: Bijeljina

U ime slike spada i njena ekstenzija, moras i nju Smile

Ko je trenutno na forumu
 

Ukupno su 579 korisnika na forumu :: 12 registrovanih, 1 sakriven i 566 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Botovac, darios, Despot1, DH, dragoljub11987, GreenMan, Krusarac, LeGrandCharles, Leonardo, Srki98, Vl veliki, zodiac94