Не удается POST большой html5 холст на сервер?

У меня есть холст, на котором можно рисовать. Мне нужно сохранить его содержимое на сервере, чтобы его можно было возобновить позже.

Для этого я xMLHttpReq.send(*) encodeURIComponent(canvasP.toDataURL())* через xMLHttpReq. open("POST", url, false);

В моем php скрипте я беру $_POST и base64_decode(json_decode($_POST[data])) и сохраняю его в .png файл на сервере.

СЕЙЧАС, это работает хорошо и прекрасно, если на холсте есть небольшой рисунок. Но если на холсте размером 1600x1200px нарисовано много всего, и его размер составляет около 600 кБ, мой скрипт не работает, и я получаю на сервере png размером 0 кБ.

Как мне это исправить? Как я могу отправить большой холст на сервер?

Является ли проблема ограничением на размер _POST? Потому что, каким бы большим ни был холст, я всегда могу загрузить его через window.open(canvasP.toDataURL(), "blabla");.

Это довольно сложная дилемма для меня. Любая помощь будет очень признательна!

[EDIT] PHP просто получает пустые $_POST[data] для всего, что превышает ~50 с чем-то кБ... Так что проблема должна возникнуть между canvasP.toDataURL() и POST-ом...

[EDIT2] Браузер говорит "Uploading...(xx%)" пока не будет "done". ТАК КУДА ЖЕ ДЕВАЮТСЯ ДАННЫЕ? :C

[EDIT3] Вот приложение, попробуйте сами (используйте google chrome): http://students.info.uaic.ro/~tudor.berechet/

[EDIT4] Ответ Майка кажется правильным насчет сухосина phpinfo screenshot

9
задан Spectraljump 21 February 2011 в 08:48
поделиться