DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   php mysql i slike (http://www.devprotalk.com/showthread.php?t=1230)

markopanic 12. 07. 2006. 22:57

php mysql i slike
 
Pomoc, ljudi!
Evo o cemu se radi.
Problem prvi:Imam 4 slike u direktorijumu "slike" na serveru, koje treba da se promene po zelji. Pretpostavljamo da se vodi racuna o velicini novih slika i to. E sad ja smislih da se lepo izabere nova slika i uploaduje pod istim imenom u dir slike, pa da je stranica procita i prikaze umesto stare. Ali ****, nece da je prikaze uopste! Prikazuje samo prazan prostor na kome slika treba da stoji... Sto me zbunjuje sasvim, kada kliknem na properties na to prazno polje, prikazuje mi se putanja do slike koja stoji na serveru! Kada prevucem to prazno polje na praznu stranicu, prikazer mi se ta slika1 Pa sam poceo da se pitam: jel to mene ovde neko z...... Slika se poziva iz obicnog html fajla.
Problem drugi: ja bih da napravim u php-u da moze da se izabere slika sa kompa, da se zapamti ime te slike u mysql bazi, pa da iz novog php-a procita to ime iz baze (a slika procita iz dir-a) i konacno prikaze na stanici! :) Voleo bih da se to uradi na taj nacin, da bih mogao lakse da brisem slike (brisanjem imena iz baze, a i njih i dir-a...) Medjutim, kad izaberem fajl sa harda sa


Code:


<form ENCTYPE="multipart/form-data" ACTION="ubaci.php" METHOD="POST">

Slika: <input name="imefajla" type="file">

<input type="submit" name="Submit" value="postavi">
<input type="reset" name="" value="obrisi">
</form>




"imefajla" je u stvari ime temporary fajla koji on napravi pre nego sto uradi nesto sa njim...
Tako da je moje pitanje: kako da ja izvucem pravo ime faila, a bih ga ubacio u bazu, i kasnije iskoristio na odgovarajuci nacin, i da li ce da mi se ponovo javi vec opisani problem gore? Mislio sam da bi to trebalo da radi fino... Nista prostije: citaj nekifajl.jpg iz direktorijuma slike, ja uploadujem neku drugu sliku pod istim imenom i druga slika se prikaze. Ali nema. Zasto?

Puno vam hvala

Ilija Studen 12. 07. 2006. 23:28

1. Ček, ček. Imaš jednu sliku koju zameniš novom. Kada odeš na tu adresu ti vidiš novu ili staru sliku (na stranici ne vidiš ništa)?
2. Pogledaj 'name' polje. Sve je lepo objašnjeno ovde.

ivanhoe 13. 07. 2006. 03:25

ako na stranici ne vidis nista, a kad direktno gadjas vidis sliku, onda ti HTML nije dobar. Proveri kako ti izgleda <img> tag, mozda nisu navodnici dobro zatvoreni ili ima extra space u imenu ili tako nesto..

takodje proveri velika i mala slova, jer pera.gif i Pera.gif na linux masinama nisu isti fajl...

markopanic 16. 07. 2006. 16:12

Nasao sam problem... Naime server jeste pod linuxom i prava na citanje uploadovane slike se ne postavljaju za "sve"... Jel mogu to da postavim u upload skripti, prava pristupa? Kao u linuxu? U njemu sam radio pre vise godina, ali mi se cini da je tamo "chmod a+r" ili bese nesto slicno... Uglavnom, jel moze to da se naglasi u skripti? U FTP manageru mogu da postavim prava kako hocu, i tad nema problema sa ucitavanjem slike, ali ovo bi trebalo da se automatski postavlja...

Hvala vam na odgovorima :)

markopanic 16. 07. 2006. 16:25

:)
Nasao sam i resenje :)

http://www.php.net/manual/en/function.chmod.php

...dakle - chmod("/somedir/somefile", <oktalna vrednost prava pristupa>);
Izvinte na dosadjivanju, i hvala na odgovorima!
Pozdrav!

markopanic 16. 07. 2006. 17:22

Novi problemi... :(
Naime fajl mi se ne uploaduje u celosti....
Evo koda koji koristim:

<?php

if ($_FILES['userfile']['error'] > 0)
{
echo 'Problem: ';
switch ($_FILES['userfile']['error'])
{
case 1: echo 'File exceeded upload_max_filesize'; break;
case 2: echo 'File exceeded max_file_size'; break;
case 3: echo 'File only partially uploaded'; break;
case 4: echo 'No file uploaded'; break;
}
exit;
}

/*// Does the file have the right MIME type?
if ($_FILES['userfile']['type'] != 'image/pjpg')
{
echo 'Problem: file is not plain text';
exit;
}

// put the file where we'd like it
*/

$upfile = 'slike/sponzor1.jpg';

if (is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if (!move_uploaded_file($_FILES['userfile']['tmp_name'], $upfile))
{
echo 'Problem: Could not move file to destination directory';
exit;
}
}
else
{
echo 'Problem: Possible file upload attack. Filename: ';
echo $_FILES['userfile']['name'];
exit;
}


echo 'File uploaded successfully<br><br>';

// reformat the file contents
$fp = fopen($upfile, 'r');
$contents = fread ($fp, filesize ($upfile));
fclose ($fp);

$contents = strip_tags($contents);
$fp = fopen($upfile, 'w');
fwrite($fp, $contents);
fclose($fp);

// show what was uploaded
echo 'Preview of uploaded file contents:<br><hr>';
echo $contents;
echo '<br><hr>';

chmod("slike/sponzor1.jpg", 0666); //podesavam prava pristupa kako mi ogovara :)

?>

...i ovo uploaduje sliku, ali samo njen deo! :(
U cemu je problem?


Vreme je GMT +2. Trenutno vreme je 18:15.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.