@ildar1989

Почему JavaScript массиву не присваивается PHP массив при введении условия внутрь цикла?

Объясните мне не ведущему в чем загвоздка? Есть цикл с присваиванием массива PHP массиву Javascript:
<?
for ($i = 0; $i < count($activposId); $i++) {   
		    $raznica2 = strtotime($todayNew2) - strtotime($posdateTime[$i]); 	
		    //if($raznica2 < 86400){	// 24 часа в секундах
			//echo $raznica2;
	           ?>
		       <script>
		       activdayposId['<? echo $i;?>'] = '<? echo $activposId[$i];?>';
		       activdayposLat['<? echo $i;?>'] = '<? echo $activposLat[$i];?>';
		       activdayposLon['<? echo $i;?>'] = '<? echo $activposLon[$i];?>';	
		       activdayposType['<? echo $i;?>'] = '<? echo $activposType[$i];?>';	
		       </script>
		       <?    			  
         //   }
		}
?>


Который работает. Но если мы добавляем условие if со сравнением времени, массив перестает присваиваться. При том что при раскоментировании echo $raznica2; нам выходит результат что есть такие записи в бд которые удовлетворяют условию if... 3 часа бьюсь над этим и не могу понять.
  • Вопрос задан
  • 180 просмотров
Пригласить эксперта
Ответы на вопрос 2
А не проще собрать данные в массиве, а потом просто с помощью json_encode() передать в JavaScript, а ещё лучше, выполнить условия в JavaScript
Ответ написан
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
во-первых, открывайте php через <?php
во-вторых, соберите через php массив с результатами и потом выведите через json_encode как уже сказали.
в-третьих желательно не закрывать ?> вообще, если там конечно не идет шаблон дальше() скорее всего идёт.

перестает присваиваться

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

[шутки за 300]
при введении условия внутрь цикла

я аж возбудился
[/шутки за 300]
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы