SQL Server — проблема с двойными кавычками первой записи массива PHP

php5, Microsoft SQL Server Management Studio, ОС 6.3.15063. я получаю данные $ row через mssql_fetch_assoc и заполняю массив PHP данными $ row, просто отлично, когда первая запись не имеет двойных кавычек. последующие данные строки могут иметь двойные кавычки, но не первая строка. Ошибка: «SyntaxError: отсутствует) после списка аргументов» в jquery.min — поэтому я не могу просмотреть и получить полезную информацию от этого. код:

$History_SQL = "DECLARE @AID int;
SET @AID = $Activity_ID;
SELECT activityid, lpid, abstract, changeid, changestamp FROM cpy_activity_history
WHERE activityid = @AID ORDER BY changestamp DESC;
";

$History_results = mssql_query($History_SQL);

while ($row = mssql_fetch_array($History_results)) {
$HistoryRecords[] = $row;
}

Это работает, когда индекс записи [0] не имеет двойных кавычек, но когда двойные кавычки выдают ошибки.

Интересно, если я использую:

$HistoryRecords[] = json_encode($row);

RESULT>>SyntaxError: missing ) after argument list

тогда это проходит мимо ошибки; но у меня возникают проблемы с использованием json_decode, чтобы получить любую полезную информацию из массива [даже не получая js фигурные скобки или что-то еще, получая другую запись из другой таблицы, возможно, потому что это значение не то, что, как он думал, будет / в любом случае, не уверен, что я даже начинаю по правильному пути с json_endode / decode.]

возможно, мне просто нужна помощь, чтобы научиться декодировать каждую запись, выходящую из json-кодированной переменной. в любом случае, эта проблема выглядит знакомой, и есть какие-нибудь идеи о том, как перестать получать ошибку? ПРИМЕЧАНИЕ: в конечном итоге мне нужно отобразить информацию о массиве с помощью JavaScript. другие связанные посты, кажется, не покрывают этот сценарий. эти двойные цитаты сводят с ума. заранее спасибо!

0

Решение

Спасибо всем за помощь!

Симптомы включали сбой браузера [a] с ошибкой console / js: «пропущено) после списка аргументов», [b] переменная в коде для отображения ошибочного поля, не связанная с SQL, используемым для создания информации для этой переменной.

ПРИЧИНА этого произошла в том, что у меня был PHP, console.log, который содержал переменную PHP. так что я смешивал JS и PHP. PHP запускался поздно, и в то время js console.log ничего не отображал.

CLUE, который привел к исправлению, заметил, что в браузере происходит сбой js msg, ДАЛЕЕ php LOG_IT stmts ниже JS Работали. js пытался console.log отправить сообщение с нулевым значением, и каким-то образом js var загружался с неверной информацией. sheeze.

КОД — перед исправлением php echo из console.log был виновником. я бросил оригинальный оскорбительный stmt, но это было что-то вроде этого:

<?php here in php land....., now i want to do a console.log....
?><script>console.log("show me info!: " <?php echo $info; ?></script><?php
...back in php land...

я закомментировал «echo $ info;» и все заработало. конечно я разорвал это вообще. Забавно, это бы прояснилось, когда я перестал биться головой о стену и просто решил почистить и удалить все устраняющие неполадки console.logs.

ВЫВОД — старый урок «не смешивайте js и php», даже в журнале ошибок!

спасибо еще раз за вашу помощь!

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector