Welcome to WebmasterWorld Guest from 54.198.37.200

Forum Moderators: open

Message Too Old, No Replies

JavaScript and PHP help

     
5:23 pm on Jun 11, 2008 (gmt 0)

Senior Member

WebmasterWorld Senior Member 5+ Year Member

joined:June 10, 2008
posts:1130
votes: 0


I need to display multiple lines with JavaScript and PHP here is my code.
Header("content-type: application/x-javascript");

//displays an alert box with a php varible $msg passed into it
function echoAlert($msg){

echo "alert('$msg')";

}//echoAlert

$var = ("File Written to Sybase01\\\insurance$\\\MSBCBS\\\Send Log\\\Sending\\nContents:");

//$lines is an array of a multiple line text file
foreach($lines as $i){

//function to be used later
//writeLog($username, $i);
$var .=("\\n {$i}");
}//foreach

echoAlert($var);

This code is executed by another javascript file when the user clicks a button. The problem is my alert box says error missing ")" after argument list. If I manually store multiple lines of var i.e.
$var .= ("\\n {$text1}");
$var .= ("\\n {$text2}");
The alert box works fine.
As I am not a Javascript person, I believe it either has something to do with the way the variable is stored in the array or my escape characters. Any suggestions, thanks in advance.

2:27 pm on June 12, 2008 (gmt 0)

Senior Member

WebmasterWorld Senior Member korkus2000 is a WebmasterWorld Top Contributor of All Time 10+ Year Member

joined:Mar 20, 2002
posts:3732
votes: 0


It could possibly be what is in the array. Try looking at whats in the array and see if it has any characters that need to be escaped. Other than that I am not sure why it is working one way and not the other.
9:50 pm on June 13, 2008 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Apr 20, 2004
posts:1475
votes: 0


I'm not a big fan of trying to execute a client-side action with a server-side language, so I've broken your script up into server- and client-side sections:

<script type="text/javascript">
function echoAlert(msg){
alert(msg);
}
</script>
<?php
$var = ("File Written to Sybase01\\\insurance$\\\MSBCBS\\\Send Log\\\Sending\\nContents:");
foreach($lines as $i){
$var .=("\\n {$i}");
}
?>
<script type="text/javascript">
echoAlert('<?php echo $var?>');
</script>

This works fine. Your original code did nothing except print out "echo ('File written.." for me.
 

Join The Conversation

Moderators and Top Contributors

Hot Threads This Week

Featured Threads

Free SEO Tools

Hire Expert Members