Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapis obrazka na serwerze.
Forum PHP.pl > Forum > Po stronie przeglądarki
NickOver
Cześć.
Dzięki js dostaję obrazk w takiej formie: KLIK
Teraz potrzebuję to wysłać ajaxem na serwer i zapisać jako plik. Z samym wysłaniem nie ma problemu, lecz jak zrobić aby php był w stanie przetworzyć to na grafikę?
Dzięki wielkie za wszelką pomoc smile.gif
Crozin
1. Sprawdzasz czy przesłane dane wyglądają jak obrazek zakodowany Base64 w formie Data URI:
  1. $input = 'data:image/XXX;base64,YYY';
  2.  
  3. if (preg_match('#^data:image/(?P<format>[a-z]+);base64,(?P<data>[a-zA-Z0-9/+]+)$#', $input, $match) !== 1) {
  4. die('Invalid input format');
  5. }
2. Następnie surową zawartość obrazka otrzymasz po zdekodowaniu base64_decode.
3. Mając informację o formacie (png, jpeg, gif itp.) oraz dane obrazka możesz korzystając z Imagicka czy GD dalej operować na tym.
Pyton_000
  1. $data = $_POST['logoImage'];
  2.  
  3. $uri = substr($data,strpos($data,",")+1);
  4.  
  5. file_put_contents($_POST['logoFilename'], base64_decode($uri));
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.