Jump to content

JSON Encode and escaping


x1nick

Recommended Posts

This should be really simple but I can't get my head round it.

 

Please see the PHP/HTML below.

 

<?php
$a = array(
'test' =>	"'data'"
);
$json = json_encode($a);
?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Unknown Page</title>
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.5.min.js"></script>
<script type="text/javascript">
var j = jQuery.parseJSON('<?php echo $json; ?>');
</script>
</head>
<body>
</body>
</html>

 

You will notice that data is stored by " then '

I have tried how it is and also with add slashes

 

$a = array(
'test' =>	addslashes("'data'")
);

 

It either outputs without slashes (which is clearly wrong)

var j = jQuery.parseJSON('{"test":"'data'"}');

Or which I cant work out why dosent work

var j = jQuery.parseJSON('{"test":"\\'data\\'"}');

 

Now firebog throws the following error

missing ) after argument list

 

How should I be escaping this variable?

Link to comment
https://forums.phpfreaks.com/topic/227647-json-encode-and-escaping/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.