Возможный дубликат:
Каков самый безопасный способ передачи аргументов с серверного PHP на JavaScript по размеру клиента
Цель. Заменить статическое имя файла в объекте javascript на данные php.
Проблема:
Я не знаю, правилен ли мой синтаксис или логика, поскольку я не получаю никаких ошибок js или php. Хуже всего мой сценарий не дает желаемых результатов. Вы можете увидеть фактическую страницу по адресу http://www.iamvishal.com/dev/property/burradon-road-burradon line 197
javascript, который я хочу сделать с помощью php:
var data = { 'JPEG/1.jpg': { caption: '' }, 'JPEG/2.jpg': { caption: '' }, 'JPEG/3.jpg': { caption: '' }, 'JPEG/4.jpg': { caption: '' }, 'JPEG/5.jpg': { caption: '' }, 'JPEG/6.jpg': { caption: '' }, 'JPEG/7.jpg': { caption: '' }, 'JPEG/8.jpg': { caption: '' },};
Поэтому мне нужно заменить JPEG / 1.JPG на php-переменную $ filename. Ниже мой код.
<script type="text/javascript"> var data = { ; <?php $queryglob ="JPEG/*".$node->field_ropertyid['und'][0]['value'].".jpg"; // Here I am getting all the file names as per my condition. foreach (glob($queryglob) as $filename) { // here I am want each file name to be assigned into the javascript object ?> data = data+'+<?php print $filename ; ?> +':{caption:''}, ; <?php } ?> data = data+}; </script>
Почему вы не используете json_encode
<?php $data = array( ); foreach (glob($queryglob) as $filename) $data[$filename] = array( 'caption' => '' ); ?> <script type="text/javascript"> var data = <?php echo json_encode( $data ); ?> </script>
Это гораздо более умно, чем построение строки