使用双引号的问题PHP数组

时间:2017-09-12 16:24:33

标签: php sql-server json

php5,Microsoft SQL Server Management Studio,OS 6.3.15063。我通过mssql_fetch_assoc获取$ row数据,当第一条记录没有双引号时,用$ row数据填充PHP数组就好了。后续行数据可以有双引号,而不是第一行。错误:"语法错误:缺少)参数列表"在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编码的var的每个记录。无论哪种方式,这个问题看起来很熟悉,以及如何停止获取错误的任何想法?注意:最终,我需要通过javascript显示数组信息。其他相关的帖子似乎不包括这种情况。这些双引号令人发狂。提前谢谢!

1 个答案:

答案 0 :(得分:0)

thx,一切都在帮助!

SYMPTOMS包含[a]浏览器崩溃与控制台/ js错误:"缺少)arg list",[b]代码中的var显示错误字段,与使用的sql无关为该变种创建信息。

发生的原因是我在PHP中有一个包含PHP变量的console.log。所以我混合了js和PHP。 PHP发射得很晚,所以当时js console.log没有任何东西可以显示。

导致修复此问题的CLUE注意到js msg在浏览器中崩溃了,但是js 下面的php LOG_IT stmts 正在运行。 js试图在console.log中创建一个具有空值的msg,并且不知何故js var被加载了错误的信息。 sheeze。

CODE - 在修复之前,console.log中的php echo是罪魁祸首。我抛弃了最初的违规行为,但它是这样的:

<?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...

我评论了&#34; echo $ info;&#34;事情很有效。当然我完全撕掉了它。好笑的是,当我不再把头撞到墙上而只是决定清理并删除所有故障排除console.logs时,它会自行清理。

结论 - 一个古老的教训,即使在错误记录中,也不要混合使用js和php&#34;

再次感谢你的帮助!