Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Zapisanie zdjęcia mając tylko jego link
kielich
post
Post #1





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Witam czy macie sposób w jakim mógłbym zapisać zdjęcie do katalogu mając tylko jego link np. jakaś_tam_sobie_ścieżka/img/zdjecie.jpg

Dziękuję za odpowiedzi.


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 17)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




file_get_contents oraz file_put_contents


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kielich
post
Post #3





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Czy mogę dostać jakiś przykład ze zdjęciem questionmark.gif Z góry dziękuje


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Bez przesady... najpierw pobierasz zawartosc przez file_get_contents a potem zapisujesz tam gdzie chcesz przez file_put_contents....


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kielich
post
Post #5





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


tak własnie robię
  1. file_put_contents(Yii::app()->session['image'],'plik');


i dostaję
Kod
[<a href='function.file-put-contents'>function.file-put-contents</a>]: failed to open stream: HTTP wrapper does not support writeable connections


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
Arcioch
post
Post #6





Grupa: Zarejestrowani
Postów: 324
Pomógł: 110
Dołączył: 18.09.2012

Ostrzeżenie: (0%)
-----


No właśnie że tak nie robisz bo gdzie masz funkcję file_get_contents?

Mniej więcej tak wink.gif

  1. $zdjecie = @file_get_contents(Yii::app()->session['image']);
  2. file_put_contents('tu ścieżka gdzie ma zapisać i nazwa zdjęcia z rozszerzeniem', $zdjecie );
Go to the top of the page
+Quote Post
kielich
post
Post #7





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Dziękuje, niby błedy juz nie ma ale zdjęcie się jakby nie zapisywało

Oryginalny link: http://img.gettextbooks.com/pi/8372780129/150/400

a tu kod
  1. $zdjecie = file_get_contents(Yii::app()->session['image']);
  2. file_put_contents($_SERVER['DOCUMENT_ROOT'].'/images/fotka.jpg', $zdjecie );


Jak to rozwiązać ?


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Czy tak cięzko napisać w czym problem?
Nie tworzy się plik, czy tworzy się ale jest pusty?

Cytat
tak własnie robię
I na przyszłość jak ktoś ci mowi ze ma być file_get_contents oraz file_put_contents to weź się trochę bardziej skup i nie pisz ze tak robisz, podczas gdy używasz tylko jednej z funkcji.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kielich
post
Post #9





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Ale to nadal nie rozwiązuje mojego problemu. Plik się tworzy ale bez obrazu. plik mimo że wazy 1KB to jest "biały"


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No ale zobacz co ci sie w tym pliku znajduje.... edytor tekstu, znasz takie cos?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kielich
post
Post #11





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


są jakieś śmieci , bez różnicy czy zapisze jakoś png czy jpg


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
nospor
post
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No ale pokaż te śmieci... dokładnie..... ty się nie znasz, ale my może coś z tych śmieci zrozumiemy...
@kielich, jesteś tyle czasu na forum... czy naprawdę wszystko pokolei musimy ci mówić? Zrób to, zrób tamto, a teraz zrób jeszcze coś innego?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kielich
post
Post #13





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


O to śmieci które mam w pliku smile.gif

Kod
˙Ř˙ŕ JFIF  ` `  ˙Ű C 
     
#exclamation.gif!$'$ & ! ˙Ű C                                                   ˙Ŕ   " ˙Ä               
˙Ä µ   } !1AQa"q2‘ˇ#B±ÁRŃđ$3br‚    
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š˘Ł¤Ą¦§¨©Ş˛ł´µ¶·¸ąşÂĂÄĹĆÇČÉĘŇÓÔŐÖ×ŘŮÚáâăäĺćçčéęńňóôőö÷řůú˙Ä            
˙Ä µ  w !1AQaq"2B‘ˇ±Á    #3RđbrŃ
$4á%ń&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š˘Ł¤Ą¦§¨©Ş˛ł´µ¶·¸ąşÂĂÄĹĆÇČÉĘŇÓÔŐÖ×ŘŮÚâăäĺćçčéęňóôőö÷řůú˙Ú    ? řĘŠ( ˙Ů


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
nospor
post
Post #14





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Wygląda to na poprawną zawartość pliku jpeg. Jeśli ci nie działa to jest kilka możliwości:
1) Jest jakiś biały znak który wkradł się po drodze
2) Coś innego - trudno akurat muszę wyjść i nie mam czasu domyślać się cóż innego może to być. Ale wcale bym się nie zdziwił, gdybyś ty poprostu źle ten plik otwierał smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
redeemer
post
Post #15





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Lepiej jak go byś podesłał w postaci binarnej. Widać po nagłówku, że raczej JPEG. A czy popsuty, czy prawidłowy, ale po prostu biały to ciężko powiedzieć. Sprawdź co zawiera Yii::app()->session['image'], sprawdź czy na pewno sprawdzasz plik $_SERVER['DOCUMENT_ROOT'].'/images/fotka.jpg'


--------------------
Go to the top of the page
+Quote Post
kielich
post
Post #16





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Link wpisałem na sztywno kod wygląda tak

  1. $zdjecie = file_get_contents("http://img.gettextbooks.com/pi/8372780129/150/400");
  2. file_put_contents($_SERVER['DOCUMENT_ROOT'].'/images/fotka.jpg',$zdjecie);


Plik się zapisuje w jego wpłaściwościach jest że ma 6 KB, 1x1 lecz "normalnie" jest on pusty, biały, bez zdjęcia


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
redeemer
post
Post #17





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


wget zwraca to samo co file_get_contents czyli jpeg 1x1 o rozmiarze 691 bajtów. Spróbuj curlem z jakimś standardowym nagłówkiem imitując przeglądarkę.


--------------------
Go to the top of the page
+Quote Post
kielich
post
Post #18





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Zrobiłem coś takiego
  1. $c = curl_init();
  2. curl_setopt($c, CURLOPT_URL, 'http://img.gettextbooks.com/pi/8372780129/150/400');
  3. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  4. curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1");
  5.  
  6. $wynik=curl_exec($c);
  7.  
  8. $image = imagecreatefromstring($wynik);
  9. header("Content-Type: image/png");
  10. print_r(imagepng($image));


I dostaje obrazek, lecz nie wiem jak mam go teraz zapisać do pliku , próbowałem file_put_contents lecz wtedy plik jest pusty

ok poradziłem sobie smile.gif) Dziękuje za pomoc


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:03