На этом уроке мы напишем функцию do_ship(). Разберём ещё раз все возможные ошибки расстановки кораблей, сформируем код и текст ошибки, который вернём в xml. После успешного размещения всех кораблей мы поменяем статус игры на "play" и начнём уже играть.
Дата отправки отчёта:
13 января 2016 г.
Задание выполнено: за
1 час. 00 мин.
Чему научился:
Закрепил всё ранее изученное, и еще попрактиковался в написании PHP кода
Что было сложным:
На самом деле всё довольно просто, так как сами запросы мы уже обрабатывали во время создания протокола. Сейчас же идет написание их вызова, что для меня всегда было легко
Комментарии:
Очень напрягает отсутствие нормальной возможности дебага в PHP. Приходится либо прописывать выведение комментария для каждой возможной ошибки, либо потом в каждом подозрительном месте писать echo. Но в целом язык мне очень понравился) А вот функция получилась большая, на 128 строк.
Нашел сервис ideone.com/ Там есть что-то похожее на дебаг, но на нашей программе не проверял. В этом сервисе можно выбрать, на каком языке писать, есть и php. При ошибке появляется красная точка напротив строчки, не сразу эту точку там заприметил.
Научился: Реализовывать функцию do_ship() с тестированием функционала программы по обработке большинства возможных ошибок.
Отличный и очень полезный урок!
Трудности: Очень трудоемкий урок! Но он того стоит!
Научился: 1. передавать значения переменных программе прямо через адресную строку конструкцией http://dimasian.ru/battle.php?do=info и при помощи php функции intval($_GET["ocean"]);
2. лучше стал понимать как PHP и MySQL работают в связке Трудности: размер функции do_ship() - тяжело искать ошибки, особенно, если не знаешь где кроме таблички с результатом почему-то выводятся многочисленные Array([0]=>0) значения