【问题标题】:Sending PHP array to JS function called in echoed string将 PHP 数组发送到在回显字符串中调用的 JS 函数
【发布时间】:2018-01-19 16:14:44
【问题描述】:

我有一个多维数组,想将它作为参数发送给 JS 函数。谷歌告诉我json_encode() 是要走的路,但是当我尝试调用该函数时,我得到一个未终止的字符串文字错误。

这是我的代码:

$wynik_artefakty = $polaczenie->query("SELECT * FROM artefakty"); 
$tablica_artefakty = mysqli_fetch_all($wynik_artefakty,MYSQLI_ASSOC);
$tablica_artefakty = json_encode($tablica_artefakty);

 echo "<div class='wpis' 
       onclick=\"dodajDiv('$tablica_artefakty')\">" 
      .$tablica_jednostek[$i]['nazwa']." ".$tablica_jednostek[$i]['koszt']."</div>";

以及json_encode()之后数组的示例回显:

[{"Id":"2","nazwa":"Sceptre of Atrocities","personal":"The 
Gorgon","dla_maga":"0","koszt":"15"},{"Id":"3","nazwa":"Artefakt dla 
maga","personal":"","dla_maga":"1","koszt":"10"}] 

【问题讨论】:

    标签: javascript php arrays multidimensional-array


    【解决方案1】:

    这是因为您从$tablica_artefakty 注入的字符串包含引号。这会导致您的 HTML 呈现不正确 - 属性被字符串中的引号过早关闭。您应该转义 $tablica_artefakty 中的引号,以免它们在错误的位置关闭 HTLM 属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-05
      相关资源
      最近更新 更多