Reputation: 36839
I'm generating a string in PHP and then eventually passing this string into a JavaScript alert box, my problem is I actually can't add line breaks in my alert box.
My code looks as follows
$str = "This is a string\n";
$alert = $str."This is the second line";
if(!empty($alert)){
?>
<script type="text/javascript">
$(document).ready(function() {
alert('<?=$alert?>');
});
</script>
<?php
}
I'm getting the error:
Undeterminnated string literal
If I remove the \n
from the string it works 100% but without line breaks.
Upvotes: 1
Views: 8900
Reputation: 11592
You need to change $str
to
$str = "This is a string\\n";
so that the \n
gets passed to the JavaScript.
Upvotes: 4
Reputation: 449485
This happens because PHP interprets the \n before JavaScript has the chance to, resulting in a real line break inside the Javascript code. Try
\\n
Upvotes: 19