Ошибка js движка uncaught invalid json

code :

var data = $.parseJSON(data);

Error message :

Uncaught Invalid JSON: {times: [{'9:30am','10:00am','10:30am','11:00am','11:30am','12:00pm','12:30pm','1:00pm','1:30pm','2:00pm','2:30pm','3:00pm','3:30pm','4:00pm','4:30pm','5:00pm'}]} 

I have tried to parse as json at Ajax,

then I don’t understand why this error is appeared.

Please tell me about it.

Thanks

sinneren, Я так понял что та в php файлах такого рода?

<?php
header('Content-Type: text/html; charset=utf-8');
require 'init.php';
require 'needfunc.php';
if(!isset($_POST['viewer_id']) || !isset($_POST['auth_key'])) exit('not parameters');
if(!isset($_POST['type'])) exit('not parameters');

$viewer_id = $_POST['viewer_id'];
$viewer_id = addslashes($viewer_id);
$viewer_id = htmlspecialchars($viewer_id);
$viewer_id = mysql_escape_string($viewer_id);

$auth_key = $_POST['auth_key'];
$auth_key = addslashes($auth_key);
$auth_key = htmlspecialchars($auth_key);
$auth_key = mysql_escape_string($auth_key);

$ip = $_SERVER['REMOTE_ADDR'];
$ip = addslashes($ip);
$ip = htmlspecialchars($ip);
$ip = mysql_escape_string($ip);

$id = $_POST['type'];
if(!is_numeric($id)) exit('fail id');
if($id > 4 || $id < 1) exit('fail id');

$real_auth_key = md5($app_id.'_'.$viewer_id.'_'.$app_key);
if($real_auth_key != $auth_key) exit('you a not you');

if(!mysql_connect($db_host,$db_user,$db_pass)) exit('not_connect');
mysql_select_db($db_name);

$q = 'SELECT * FROM `users` WHERE `uid` = '.$viewer_id;
$res = mysql_query($q);
if(mysql_num_rows($res) == 0) exit('no_user');
$f = mysql_fetch_array($res);
if(time() - $f['addheight_last'] < 4) exit(); 
if($ip != $f['ip'] && (time() - $f['last_get_inf'] > 20)) {
	$q = "UPDATE `users` SET `errors` = errors + 1 WHERE `uid` = ".$viewer_id;
	mysql_query($q);
	exit();
}

$is = false;
$q = '';
switch($id) {
    case 1:
	    if($f['addheight1']-(time()-900)<=0) {
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+1);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+1,`drops`=drops+21,`tree_height`=tree_height+1,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`=".time().",`exp`=exp+1,`drops`=drops+1,`tree_height`=tree_height+1 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
		else {
		    if($f['drops']<8) break;
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+1);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+1,`drops`=drops+12,`tree_height`=tree_height+1,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`exp`=exp+1,`tree_height`=tree_height+1,`drops`=drops-8 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
	case 2:
	    if($f['addheight2']-(time()-2700)<=0) {
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+2);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+2,`drops`=drops+22,`tree_height`=tree_height+2,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight2`=".time().",`exp`=exp+2,`drops`=drops+2,`tree_height`=tree_height+2 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
		else {
		    if($f['drops']<14) break;
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+2);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+2,`drops`=drops+8,`tree_height`=tree_height+2,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`exp`=exp+2,`tree_height`=tree_height+2,`drops`=drops-14 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
	case 3:
	    if($f['addheight3']-(time()-5400)<=0) {
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+3);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+3,`drops`=drops+23,`tree_height`=tree_height+3,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`drops` = drops + 3,`addheight3`=".time().",`exp`=exp+3,`tree_height`=tree_height+3 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
		else {
		    if($f['drops']<20) break;
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+3);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+3,`tree_height`=tree_height+3,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`exp`=exp+3,`tree_height`=tree_height+3,`drops`=drops-20 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
	case 4:
	    if($f['addheight4']-(time()-10800)<=0) {
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+4);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+4,`drops`=drops+24,`tree_height`=tree_height+4,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight4`=".time().",`exp`=exp+4,`drops`=drops+4,`tree_height`=tree_height+4 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
		else {
		    if($f['drops']<24) break;
			$now_level = level_detect($f['exp']);
			$new_level = level_detect($f['exp']+4);
			if($now_level != $new_level) {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`addheight1`= 0,`addheight2`= 0,`addheight3`= 0,`addheight4`= 0,`exp`=exp+4,`tree_height`=tree_height+4,`drops`=drops-4,`new_level` = 1, `sheets` = sheets + 1 WHERE `uid` =".$viewer_id;
			}
			else {
				$q = "UPDATE `users` SET `addheight_last` = ".time().",`exp`=exp+4,`tree_height`=tree_height+4,`drops`=drops-24 WHERE `uid` =".$viewer_id;
			}
			$is = true;
			break;
		}
}
if($is) {
    mysql_query($q);
	echo json_encode(array('ok' => 'true'));
}
else {
	echo json_encode(array('ok' => 'false'));
}
mysql_close();
?>

Рекомендованные сообщения

replyua

    • Рассказать

Добрый день, пытаемся обновить движок, все выполнено согласно инструкции https://dle-news.ru/extras/online/index.html  

Ручное обновление:

1.Создайте резервную копию базы данных и всех файлов скрипта на сервере. 

2.Обновите все файлы находящиеся на вашем сервере на файлы из папки /upload/ архива дистрибутива (за исключением шаблонов из папки /templates/). Внимание: Файлы из архива дистрибутива, нужно заливать на сервер поверх существующих, а не удалять предварительно папки на сервере. 

3.Войдите в админпанель вашего сайта как администратор и следуйте дальнейшим инструкциям.

Сейчас будет произведено обновление вашей базы данных до текущей версии скрипта. Ваша база данных будет пошагово обновлена с версии 10.3 до 14.3.
 

После запуска обновления получаем такое же окно админки в фрейме только с ошибкой Invalid JSON:

Прошу помочь разобраться.  Обновляем с 10.4 до 14.3 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

radrigo

    • Рассказать

Пробуйте обновлять поэтапно. Сначала например до 11 версии, после 12 и так далее

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

Добрый день, очистил кеш браузера и получилось обновится до 13.1 версии а дальше выдает ошибку 500 уже и все админка не грузится

Админи говорит ошибка скрипта в логах

18-Jun-2021 14:02:53 UTC] PHP Fatal error:  Uncaught TypeError: mysqli_fetch_assoc(): Argument #1 ($result) must be of type mysqli_result, bool given in /var/www/engine/classes/mysql.php:164
Stack trace:
#0 /var/www/engine/classes/mysql.php(164): mysqli_fetch_assoc()
#1 /var/www/engine/classes/plugins.class.php(121): db->get_row()
#2 /var/www/engine/classes/plugins.class.php(94): DLEPlugins::loadplugins()
#3 /var/www/engine/classes/plugins.class.php(66): DLEPlugins::pluginsstartup()
#4 /var/www/admin.php(29): DLEPlugins::Check()
#5 {main}
  thrown in /var/www/engine/classes/mysql.php on line 164

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

Ребята до 13.1 доход установщик и выдает ошибку 

Обновление скрипта до версии: 13.1 ошибка выполнения операции
HTTP Error: 500
 

[18-Jun-2021 15:06:56 UTC] PHP Fatal error:  Uncaught TypeError: mysqli_fetch_assoc(): Argument #1 ($result) must be of type mysqli_result, bool given in /var/www/engine/classes/mysql.php:164
Stack trace:
#0 /var/www/engine/classes/mysql.php(164): mysqli_fetch_assoc()
#1 /var/www/engine/classes/plugins.class.php(121): db->get_row()
#2 /var/www/engine/classes/plugins.class.php(94): DLEPlugins::loadplugins()
#3 /var/www/engine/classes/plugins.class.php(66): DLEPlugins::pluginsstartup()
#4 /var/www/admin.php(29): DLEPlugins::Check()
#5 {main}
  thrown in /var/www/engine/classes/mysql.php on line 164

Как обновится?  на сервер стоит уже PHP 8 и mariadb (другой сайт на сервер отлично работает на 14.2 версии)

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

Ребята софт с 10.3 дальше 13.1 не доходит апдейт, выдает 500 ошибку выше. 

Что делать как обновится?  Поэтапно тоже не получается так как стоит php 8 на сервере,  и даже если залить 13.0 поверх обновления нету он предлагает установку а не обновление. 

Жду решения от саппорта — лицензию покупали у вас

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

radrigo

    • Рассказать

Подождите, пока поддержка не ответит. А вообще DLE полноценно стало работать на php 8.x совсем недавно. Если не ошибаюсь, то пару версий назад.

Может из-за этого не получается обновить

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

19 минут назад, radrigo сказал:

Подождите, пока поддержка не ответит. А вообще DLE полноценно стало работать на php 8.x совсем недавно. Если не ошибаюсь, то пару версий назад.

Может из-за этого не получается обновить

Возможно уже думаю или установить чистую 14.3 а поверх просто заменить бд с контентом dle_post таблица или там разная структура и не будет работать?

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

Gameer

    • Рассказать

11 минут назад, replyua сказал:

Возможно уже думаю или установить чистую 14.3 а поверх просто заменить бд с контентом dle_post таблица или там разная структура и не будет работать?

dle_post
dle_post_extras
dle_tags
dle_xfsearch
dle_post_log
dle_logs
dle_category

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


Изменено 18 июня 2021 пользователем Gameer

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

dle_post  — заменили полет нормальный но нет категорий

заменили dle_category в админке ругается что они отключены

Не помогло видимо такой апргейд запрещен, ждем ответа поддержки.

Имхо  база на 1.7Гб    =  250к новостей

Категории пишет не включены. Как только включаю сайт сразу бд в 100% и ложится сервак. 

Ребята как сделать нормально трансфер с 10.3  на 14.3 подскажите на серваке стоит php 8 и соседний сайт норм работате на 14.2  и база mariadb последняя. 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

В какой структуре таблицы в 14.3 версии идут  INODB или MYSIAM?  после экспорта у нас были MYISAM может в этом причина

И еще кодировка не совпадает у нас utf8_general_ci  а  в новой версии utf8mb4_general_ci

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

Вообщем надо обновить движок правильно жду помощь поддержки

Ошибка выскакивает на шаге обновления уже с 13.0  на 13.1   

Обновление скрипта до версии: 13.1 ошибка выполнения операции
HTTP Error: 500
 

[18-Jun-2021 15:06:56 UTC] PHP Fatal error:  Uncaught TypeError: mysqli_fetch_assoc(): Argument #1 ($result) must be of type mysqli_result, bool given in /var/www/engine/classes/mysql.php:164
Stack trace:
#0 /var/www/engine/classes/mysql.php(164): mysqli_fetch_assoc()
#1 /var/www/engine/classes/plugins.class.php(121): db->get_row()
#2 /var/www/engine/classes/plugins.class.php(94): DLEPlugins::loadplugins()
#3 /var/www/engine/classes/plugins.class.php(66): DLEPlugins::pluginsstartup()
#4 /var/www/admin.php(29): DLEPlugins::Check()
#5 {main}
  thrown in /var/www/engine/classes/mysql.php on line 164

Дальше все сервак уходит в 500 ошибку и все надо с нуля делать сносить. 

Напомню апдейт делаем с 10.3  до 14.3  сервер уже сконфигурирован и настроен под 14.3 вместе с php8,mariadb (сосед работает отлично на 14.2 на этом сервере)

Размер БД 1.7Гб таблица с контентом 250к записей. 

Апдейт идет долго но терпимо до 13 версии где то минут 8 (таймаут убрали чтоб не вылетал скрипт)

Решение за саппортом. Лицензия куплена. 

С уважением,

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

germanydletest

    • Рассказать

2 часа назад, replyua сказал:

Вообщем надо обновить движок правильно жду помощь поддержки

Ошибка выскакивает на шаге обновления уже с 13.0  на 13.1   

Обновление скрипта до версии: 13.1 ошибка выполнения операции
HTTP Error: 500
 

[18-Jun-2021 15:06:56 UTC] PHP Fatal error:  Uncaught TypeError: mysqli_fetch_assoc(): Argument #1 ($result) must be of type mysqli_result, bool given in /var/www/engine/classes/mysql.php:164
Stack trace:
#0 /var/www/engine/classes/mysql.php(164): mysqli_fetch_assoc()
#1 /var/www/engine/classes/plugins.class.php(121): db->get_row()
#2 /var/www/engine/classes/plugins.class.php(94): DLEPlugins::loadplugins()
#3 /var/www/engine/classes/plugins.class.php(66): DLEPlugins::pluginsstartup()
#4 /var/www/admin.php(29): DLEPlugins::Check()
#5 {main}
  thrown in /var/www/engine/classes/mysql.php on line 164

Дальше все сервак уходит в 500 ошибку и все надо с нуля делать сносить. 

Напомню апдейт делаем с 10.3  до 14.3  сервер уже сконфигурирован и настроен под 14.3 вместе с php8,mariadb (сосед работает отлично на 14.2 на этом сервере)

Размер БД 1.7Гб таблица с контентом 250к записей. 

Апдейт идет долго но терпимо до 13 версии где то минут 8 (таймаут убрали чтоб не вылетал скрипт)

Решение за саппортом. Лицензия куплена. 

С уважением,

Качаете сайт на компьютер, устанавливаете Open Server Panel, поэтапно обновляетесь в ручном режиме и накатываете уже на свой сайт обновлённую CMS и БД


Изменено 18 июня 2021 пользователем germanydletest

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

celsoft

    • Рассказать

Понижайте версию PHP до линейки 7.xx и потом уже после обновления обновитесь на PHP 8

Ваша версия еще не имела поддержки PHP 8.

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

18 минут назад, celsoft сказал:

Понижайте версию PHP до линейки 7.xx и потом уже после обновления обновитесь на PHP 8

Ваша версия еще не имела поддержки PHP 8.

Спасибо попробуем, тогда чтоб перепрыгнуть с 5 версии пхп на 8ю надо пройти обновления через 7ку пхп?

А потом подключить 8-ю уже на 14.x версию после всех обновлений?

И еще ничего страшного что у нас база уже изначально в utf8 а не cp1251  будет ли при апдейте проблемы конвертации? так как я понимаю что этап апдейта переводит все в utf8 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

Еще раз спасибо получилось обновить движок но теперь проблему в другом

Полная новость не отображается? На главной все новости в блоках есть когда нажимаем на полную новость в fullstory  не работает

(ключ введен лицензии правда еще на dev локальном сайт развернут)

Он переходит на ссылку полной новости, но не выводит ее на сайте. В чем может быть проблема?

И еще админка предлагает Конвертирование базы данных в кодировку utf8mb4

Это нужно делать? У нас база 1.7Гб она после конвертации увеличится? Есть смысл конвертироватся? Мы не используем emoji и специальные символы и не планируем. 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

    {full-story}  работает в 14.3 версии?

1) подозрение на Правила Rewrite Nginx+php-fpm для DLE 

2) не верный htaccess (хотя он был взять с папки uploads 14.3 и залить поверх

3) кодировка?

4) криво прошел апдейт но ошибок не было. 

5) категории тоже не работают не выводятся новости. 

6) Default шаблон не помогает. 

7) Ключ активирован лицензии и стоит лимит на новости? Сервер тестовый подключение пока только через host — IP

В чем может быть причина? Полная новость и категории не выводят контент. В админке ошибок нету. 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

alex32

    • Рассказать

4 минуты назад, replyua сказал:

В чем может быть причина? Полная новость и категории не выводят контент. В админке ошибок нету. 

Покажите ссылку на ваш сайт

7 минут назад, replyua сказал:

7) Ключ активирован лицензии и стоит лимит на новости? Сервер тестовый подключение пока только через host — IP

Ключ привязан к доменному имени.  И активируется на домене. Поэтому при заходе через ip и стоит ограничение на новости

8 минут назад, replyua сказал:

В чем может быть причина? Полная новость и категории не выводят контент. В админке ошибок нету. 

Причина в чпу. Надо отключить в админке и проверить

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

replyua

    • Рассказать

6 минут назад, alex32 сказал:

Покажите ссылку на ваш сайт

Ключ привязан к доменному имени.  И активируется на домене. Поэтому при заходе через ip и стоит ограничение на новости

Причина в чпу. Надо отключить в админке и проверить

Вы были правы причина в ЧПУ при отключение все работает только ссылки типа index.php?newsid=256001

Тогда видимо сборка Nginx+php-fpm нужно поправить там реврайты в конфиге nginx верно?

И ЧПУ будет работать у нас?

только категории и статические страницы тоже не работают это все связано с ЧПУ? 

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

alex32

    • Рассказать

15 минут назад, replyua сказал:

Вы были правы причина в ЧПУ при отключение все работает только ссылки типа index.php?newsid=256001

Тогда видимо сборка Nginx+php-fpm нужно поправить там реврайты в конфиге nginx верно?

И ЧПУ будет работать у нас?

только категории и статические страницы тоже не работают это все связано с ЧПУ? 

Да. И выполните правила форума.

Цитата

Правила форума

Внимание !!!

На данном форуме существуют достаточно жесткие правила, поэтому прежде чем создавать свою тему убедитесь, что вы внимательно их прочитали и поняли.

1. Если ваша тема начинается с вопроса и вам нужна какая либо помощь, то в самой теме в обязательном порядке вы должны указывать ссылку на ваш сайт. Если ваш сайт находится в локальной сети и вы не можете предоставить ссылку, или вы не хотите публиковать открытой ссылки на ваш сайт, то отправляйте персональное сообщение с вопросом в службу поддержки непосредственно с сайта http://dle-news.ru/, вам ответят на ваш вопрос в персональном порядке, в случае если пользуетесь платной версией скрипта и обладаете лицензией на скрипт. Если вы пользуетесь демоверсией, то вам необходимо разместить сайт в сети интернет, и только потом обращаться за помощью. По находящимся на локальных компьютерах демоверсиям никакой помощи и поддержки на форуме не оказывается. Если вы не указали сайт, то ваша тема будет закрыта, а аккаунт на форуме заблокирован.

  • Цитата

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже.

Если у вас есть аккаунт, войдите в него для написания от своего имени.


Recommended Answers

I think double quotes(«) in JSON string is creating problem. You need to replace («) with (‘) in php function generate_banners():

function generate_banners($user_id)
	{
		$html = '';
		$query = $this->db->where('user_id',$user_id)->select('filename')->get('jos_reklama_banners');
		if($query->num_rows() > 0)
		{
			foreach($query->row() as $filename)
			{
				$html .= '<div id = ''.$filename.''>
					<img src=''.base_url().'uploads/banners/'.$filename.'?'.time().'' /> …

Jump to Post

My advice would be to get raw data only from json (not html string) and create html at javascript. That would be much more cleaner and also faster as whole html string is not send back but only filenames. Once you get all data just create a html string in …

Jump to Post

All 5 Replies

Member Avatar

12 Years Ago

I think double quotes(«) in JSON string is creating problem. You need to replace («) with (‘) in php function generate_banners():

function generate_banners($user_id)
	{
		$html = '';
		$query = $this->db->where('user_id',$user_id)->select('filename')->get('jos_reklama_banners');
		if($query->num_rows() > 0)
		{
			foreach($query->row() as $filename)
			{
				$html .= '<div id = ''.$filename.''>
					<img src=''.base_url().'uploads/banners/'.$filename.'?'.time().'' />
				</div>';
				
				
			}
		}
		else $html .= 'Nėra banerių';
		return $html;
	}

Member Avatar


McLaren

3



Posting Whiz in Training


12 Years Ago

Thanks for the response. But does not help.

Now php function is bit different but not important I guess.

function generate_banners($user_id)
	{
		$html = '';
		$query = $this->db->where('user_id',$user_id)->select('filename')->get('jos_reklama_banners');
		if($query->num_rows() > 0)
		{
			foreach($query->result() as $rez)
			{
//				$html .= '<div id = "'.$rez->filename.'">
//					<img src="'.base_url().'uploads/banners/'.$rez->filename.'?'.time().'" />
//				</div>';
				$html .= '<div id = ''.$rez->filename.''>
					<img src=''.base_url().'uploads/banners/'.$rez->filename.'?'.time().'' />
				</div>';
				
			}
		}
		else $html .= 'Nėra banerių';
		return $html;
	}

Still get error:

Uncaught Invalid JSON: {«credits»:0,»banners»:»<div id=»file8.jpg»>nttttt<img src=»http://localhost/joomla15/uploads/banners/file8.jpg?1299783595″ =»»>ntttt&lt;/div&gt;<div id=»file20.jpg»>nttttt<img src=»http://localhost/joomla15/uploads/banners/file20.jpg?1299783595″ =»»>ntttt&lt;/div&gt;»}</div></div>


But I think I can just make not using json. Return only credits as response. And then use another AJAX call to get html code. This is not very good, better would be have only one call for better performance, but this is much easier way.

But if you have ideas how to get both credits and html code in one ajax call you are welcome to share them :)

Member Avatar

12 Years Ago

My advice would be to get raw data only from json (not html string) and create html at javascript. That would be much more cleaner and also faster as whole html string is not send back but only filenames. Once you get all data just create a html string in javascript and use innerHTML property to populate it on page.

Member Avatar


McLaren

3



Posting Whiz in Training


12 Years Ago

thanks, will think about that

Member Avatar


McLaren

3



Posting Whiz in Training


12 Years Ago

I made a second ajax call to get html code, because I wanted to have one generating function, not javascript and php. But now I think I could only have one javascript function to generate html — when initialy loading page, generate banners code not with php but also with javascript, using the same function as after ajax call.

This might be difficult to understand what I wanted to say. But the problem for now is solved.


Reply to this topic

Be a part of the DaniWeb community

We’re a friendly, industry-focused community of developers, IT pros, digital marketers,
and technology enthusiasts meeting, networking, learning, and sharing knowledge.

Когда встречается. Допустим, вы пишете цикл for на JavaScript и вспоминаете, что там нужна переменная цикла, условие и шаг цикла:

for var i = 1; i < 10; i++ {
<span style="font-weight: 400;">  // какой-то код</span>
<span style="font-weight: 400;">}</span>

После запуска в браузере цикл падает с ошибкой:

❌ Uncaught SyntaxError: Unexpected token ‘var’

Что значит. Unexpected token означает, что интерпретатор вашего языка встретил в коде что-то неожиданное. В нашем случае это интерпретатор JavaScript, который не ожидал увидеть в этом месте слово var, поэтому остановил работу.

Причина — скорее всего, вы пропустили что-то из синтаксиса: скобку, кавычку, точку с запятой, запятую, что-то подобное. Может быть, у вас была опечатка в служебном слове и язык его не распознал.

Что делать с ошибкой Uncaught SyntaxError: Unexpected token

Когда интерпретатор не может обработать скрипт и выдаёт ошибку, он обязательно показывает номер строки, где эта ошибка произошла (в нашем случае — в первой же строке):

Интерпретатор обязательно показывает номер строки, где произошла ошибка Uncaught SyntaxError: Unexpected token

Если мы нажмём на надпись VM21412:1, то браузер нам сразу покажет строку с ошибкой и подчеркнёт непонятное для себя место:

Строка с ошибкой Uncaught SyntaxError: Unexpected token

По этому фрагменту сразу видно, что браузеру не нравится слово var. Что делать теперь:

  • Проверьте, так ли пишется эта конструкция на вашем языке. В случае JavaScript тут не хватает скобок. Должно быть for (var i=1; i<10; i++) {}
  • Посмотрите на предыдущие команды. Если там не закрыта скобка или кавычка, интерпретатор может ругаться на код немного позднее.

Попробуйте сами

Каждый из этих фрагментов кода даст ошибку Uncaught SyntaxError: Unexpected token. Попробуйте это исправить.

if (a==b) then  {}
function nearby(number, today, oneday, threeday) {
  if (user_today == today + 1 || user_today == today - 1)
    (user_oneday == oneday + 1 || user_oneday == oneday - 1)
      && (user_threeday == threeday + 1 || user_threeday == threeday - 1)
  return true
  
  else
     return false
}
var a = prompt('Зимой и летом одним цветом');
if (a == 'ель'); {
  alert("верно");
} else {
  alert("неверно");
}
alert(end);

Понравилась статья? Поделить с друзьями:
  • Ошибка kernel power 41 во время игры
  • Ошибка kernel data inpage error msfs sys
  • Ошибка joomla cannot write to log file
  • Ошибка kernel power 41 0x8000400000000002
  • Ошибка kernel auto boost lock acquisition with raised