1. Funkcja html2canvas nie jest funkcją JavaScript. Trzeba użyć/pobrać odpowiednie biblioteki. Zrobiłeś to?
2. Nie wiem czy sobie zdajesz sprawę, ale pierwszy if() w PHP jest mega niebezpieczny i wręcz sam błaga o to, żeby wykorzystać jego lukę i wyciągnąć zawartość plików PHP. Przeanalizuj sytuację, gdy w $_GET['file'] znajdzie się tekst "index.php" albo co gorsza dowolny inny plik z serwera (z jakimiś hasłami).
3. Popularne przeglądarki pozwalają na zainstalowanie konsoli błędów dla JavaScript (webdeveloper toolbar dla firefox). Pozwala to na podglądanie błędów spowodowanych przez JavaScript. Zainstaluj sobie taki dodatek. Prawdopodobnie pojawi się jakiś błąd związany z punktem 1.
4. Prawdopodobnie problem jest z uprawnieniami katalogów na serwerze. Jeśli trzymasz skrypty na serwerze pod Windowsem, zignoruj ten punkt. Jeśli na linuxie, czytaj dalej.
a. Utwórz w katalogu ze stroną katalog "tmp".
b. Za pomocą klienta FTP, musisz zmienić mu atrybuty na 0777 (zaznaczyć wszystkie uprawnienia do odczytu, zapisu i wykonania).
c.
zmienić na:
d. bezpośrednio przed:
dodaj taki kod:
Dodatkowo z grubsza pozbędziesz się tym problemu z punktem 2.
Przede wszystkim zacznij od odpowiedniej realizacji punktów 1 i 3.