以下を使用して、php からいくつかの JavaScript 関数を実行しています。
echo '<script language="javascript" type="text/javascript">window.top.window.updateLog("fornecedores","'.$errorMsg.'");</script>';
問題は、$errorMsg の"
構文が正しくない場合があることです。私は何をすべきか?
ありがとう
以下を使用して、php からいくつかの JavaScript 関数を実行しています。
echo '<script language="javascript" type="text/javascript">window.top.window.updateLog("fornecedores","'.$errorMsg.'");</script>';
問題は、$errorMsg の"
構文が正しくない場合があることです。私は何をすべきか?
ありがとう
私はこのようにします:
echo '<script language="javascript" type="text/javascript">window.top.window.updateLog("fornecedores",'.json_encode($errorMsg).');</script>';
PHP の値を JS コードに挿入する方法について調査しました。
その結果、使用するjson_encode()
のが最も完璧な方法であることがわかりました。
多くの理由で。
他のスクリプトを文字列として正しくエコーするには、ヒアドキュメント構文を使用する必要があります。
echo <<<ADF
<script language="javascript" type="text/javascript">
window.top.window.updateLog('fornecedores','$errorMsg')
</script>
ADF;
ここにドキュメントのリンクがあります: http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc
で " をエスケープしaddslashes($errorMsg)
ます。http://php.net/manual/en/function.addslashes.php