Я "унаследовал" страницу с ошибками PHP. Я не эксперт в этом языке, но я думаю, что нашел источник ошибки. Внутри цикла страница отправляет отформатированную строку на сервер: строка, которую я нашел на странице HTML, выглядит следующим образом:
2011-09-19__full_1
Итак, кажется, у нас есть три части:
- дата (0,10);
- строка (10,6);
- конечное число (17,1);
Код, обрабатывающий эту ситуацию, следующий:
$datagrid[] = array("date"=>substr($post_array_keys[$i], 0, 10),"post_mode"=>substr($post_array_keys[$i], 10, 6),"class_id"=>substr($post_array_keys[$i], 17, 1),"value"=>$_POST[$post_array_keys[$i]]);
Что происходит: последнее число может содержать более одного символа , поэтому этот фрагмент:
"class_id"=>substr($post_array_keys[$i], 17, 1)
неверно, потому что кажется, что он получает только один символ, начиная с 17-го (и это, кажется, вызывает странное поведение на веб-сайте).
Будучи целым числом последней частью строки, чтобы получить полное число Могу ли я смело изменить эту строку таким образом?
"class_id"=>substr($post_array_keys[$i], 17, strlen($post_array_keys[$i])-17);