Как показать дружественное сообщение об ошибке, используя Open-flash-charts2? - PullRequest
1 голос
/ 14 октября 2010

Если мой файл данных JSON получен из набора результатов базы данных, а этот набор результатов пуст, как я могу сказать OFC2 отображать сообщение об ошибке вместо сбоя из-за неправильно сформированной строки JSON?

Ответы [ 2 ]

0 голосов
/ 17 ноября 2010

Возможны несколько вариантов решения, в зависимости от вашего уровня доступа к серверу и вашего знания JavaScript и / или любых серверных платформ.

С доступом к базе данных В зависимости от типа отображаемых данных может быть возможным добавить фиктивные записи для тех запросов, которые в противном случае вернули бы пустой набор. Если у вас есть доступ к определению запроса, вы можете проверить наличие пустого набора в DB-запросе. Например, если вы используете MS SQL Server, вы можете проверить условие с помощью некоторых операторов T-SQL.

С доступом к серверу Если у вас есть доступ к серверному сценарию, генерирующему набор данных, добавьте условие, которое возвращает некоторое значение по умолчанию, которое OFC2 будет обрабатывать правильно.

С доступом к другому серверу или расположению сервера Если у вас нет доступа к конкретному сценарию, вы можете рассмотреть возможность создания нового сценария в другом месте, который запрашивает исходный сценарий и заменяет пустые результаты значением по умолчанию.

Только на стороне клиента Вы можете добавить функцию JavaScript open_flash_chart_data (см. tutorial ) для замены пустых наборов данных. OFC2 может использовать эту функцию в качестве источника данных.

Надеюсь, это поможет.

0 голосов
/ 15 ноября 2010

Добавьте к этому тегу теги для javascript и actionscript-3, и вы получите больше просмотров и полезных ответов, чем вы в настоящее время, с более точными деталями, чем я даю. Опубликуйте фактическую строку JSON, которая вызывает у вас проблему и которую вы хотели бы защитить. Таким образом, люди могут предложить регулярное выражение, чтобы перехватить его, рассматривая его как строку, а не как данные JSON в некоторый момент до того, как JSON.decode () произойдет.

Более подробно:

Вы можете поймать его в двух местах. Одним из способов является переключение на использование интерфейса javascript для OFC2 и использование JavaScript на стороне клиента для обнаружения неверной строки. Это позволяет вам изменять клиентскую строку JSON. См. http://teethgrinder.co.uk/open-flash-chart-2/tutorial-5.php для такого подхода. Недостатком является то, что на клиентах должен быть включен JavaScript, чтобы это работало.

В качестве альтернативы, поскольку OFC2 является LGPL, вы или разработчик ActionScript можете погрузиться в исходный код OFC2 и сделать там то же самое. Я не разработчик ActionScript, поэтому вам лучше убедиться, что вы получите ответ от него.

Главное добавить эти два тега в этот вопрос. 22 Количество просмотров слишком мало для вопроса с вознаграждением 500. Надеюсь, это поможет.

...