кажется, требуется. Без кодировки URI это не работает. Другими словами, base64, похоже, не является _POST безопасным.

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

Для этого я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() и пост-ин ...

[EDIT2] Браузер говорит «Загружается ... (xx%)», пока не будет «сделано». ТАК ГДЕ ИДЕТ ДАННЫЕ? : C

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

[EDIT4] Кажется, что ответ Майка о сухозине правильный

Ответы на вопрос(1)

Ваш ответ на вопрос