php - "SyntaxError: missing ; before statement" -
im trying write code add javascript in variable. going find until error "syntaxerror: missing ; before statement"
... have found out if remove line works (i put // ---- on line). please can help?
$this->paint_javascript_function_text .= ' function image_'.$this->archive_id.'_rollover (){ document.getelementbyid("details").innerhtml = "'.$this->archive_name.'<br />'.$this->archive_dimensions.' - price £'.$this->archive_price.' inc packaging"; } function image_'.$this->archive_id.'_fullsize (){ document.getelementbyid("gallery").innerhtml = '; $this->paint_javascript_function_text .= "'"; $this->paint_javascript_function_text .= '<table width="100%" height="400"border="0" align="center"><tr><td align="right" valign="middle">'; if($this->archive_id == 1) { $this->paint_javascript_function_text .= '<img src="images/paint_gallery/prev_faded.png" border="0" class="paint_nav" />'; } else { $prev = $this->archive_id - 1; $this->paint_javascript_function_text .= '<a href="#"><img src="images/paint_gallery/prev.png" border="0" class="paint_nav" onclick="javascript:image_'.$prev.'_fullsize();" /></a>'; } $this->paint_javascript_function_text .= '</td><td width="400px" height="523px" align="center" valign="middle">'.$newimage.'<br /><a href="#" class="paint_link" onclick="javascript:return_to_small_images();">back gallery</a></td><td align="left" valign="middle">'; if($total_num == $this->archive_id){ $this->paint_javascript_function_text .= '<img src="images/paint_gallery/next_faded.png" border="0" class="paint_nav" />'; } else { $next = $this->archive_id + 1; $this->paint_javascript_function_text .= '<a href="#"><img src="images/paint_gallery/next.png" border="0" onclick="javascript:image_'.$next.'_fullsize();" class="paint_nav" /></a>'; } $this->paint_javascript_function_text .= '</td></tr></table>'; // ---- $this->paint_javascript_function_text .= '<center><span class="paintings_title">'.$this->archive_name.' - '.$this->archive_dimensions.' - '.$this->archive_price.' inc p&p</span><br /><a href="basket.php?addprint='.$this->archive_id.'"><img src="images/shop/basket_button.png" border="0" /></a></center>'; $this->paint_javascript_function_text .= "'; "; $this->paint_javascript_function_text .= ' $("#main_content").hide(); $("#gallery").show(); $("#paint_nav").hide(); }';
html output:
function image_4_fullsize (){ document.getelementbyid("gallery").innerhtml = '<table width="100%" height="400" border="0" align="center"><tr><td align="right" valign="middle"><a href="#"><img src="images/paint_gallery/prev.png" border="0" class="paint_nav" onclick="javascript:image_3_fullsize();" /></a></td><td width="400px" height="523px" align="center" valign="middle"><img src="images/print_gallery/countrymans kitchen.jpg" /><br /><a href="#" class="paint_link" onclick="javascript:return_to_small_images();">back gallery</a></td><td align="left" valign="middle"><a href="#"><img src="images/paint_gallery/next.png" border="0" onclick="javascript:image_5_fullsize();" class="paint_nav" /></a></td></tr></table><center><span class="paintings_title">countryman's kitchen - - inc p&p</span><br /><a href="basket.php?addprint=4"><img src="images/shop/basket_button.png" border="0" /></a></center>'; $("#main_content").hide(); $("#gallery").show(); $("#paint_nav").hide(); }
updated
change below line
$this->archive_name
contains single quote, need escape first json_encode
$this->paint_javascript_function_text .= 'function image_'.$this->archive_id.'_rollover () { document.getelementbyid("details").innerhtml = '.json_encode( $this->archive_name.'<br />'.$this->archive_dimensions.' - price £'.$this->archive_price.' inc packagin' ).'; } function image_'.$this->archive_id.'_fullsize() { document.getelementbyid("gallery").innerhtml = ';
Comments
Post a Comment