Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Проблема с java-машиной?


Автор: Воланд 20.3.2008, 20:41
Суть в том что часть кода выполняется а остальная нет
Код

<script language='JavaScript' type='text/javascript' >
var sel = 0;
var max = <?php echo $max ?>;
var photo = new Array();
var title = new Array();
var oldel = new Array();
var oldel1 = new Array();
var dolzhnost = new Array();
<?php $i=0; while ($i<$max) { ?> photo[<?php echo $i ?>]='<?php echo $allfio[$i]->photo; $i+=1;?>'; <?php } ?>

<?php $i=0; while ($i<$max) { ?> title[<?php echo $i ?>]='<?php echo $allfio[$i]->title; $i+=1;?>'; <?php } ?>
document.write('Ya vypolnilso 8 ');
<?php $i=0; while ($i<$max) { ?> dolzhnost[<?php echo $i ?>]='<?php echo $allfio[$i]->dolzhnost; $i+=1;?>'; <?php } ?>
document.write('Ya vypolnilso 11 ');
<?php
$i=0;
while ($i<$max)
{
?>
otdel[<?php echo $i ?>]='<?php echo $allfio[$i]->otdel ?>';
<?
$i++;
}
?>
document.write('Ya vypolnilso 9 ');

document.write('Ya vypolnilso'),
document.write(' '+max+ ' '+photo[12]),
function tdOver(n,i){sel=i;
document.getElementById(n).style.backgroundColor='#fff',
document.getElementById('photocell').src="images/stories/sotrudniki/mini/"+photo[i]+"jpg",
document.getElementById('fio1').innerHTML=title[i],
document.getElementById('celldolzhnost').innerHTML=dolzhnost[i],
document.getElementById('cellotdel').innerHTML=base64_decode(otdel[i]),
document.getElementById('cellotdel1').innerHTML=otdel1[i]};
function tdOut(n){document.getElementById(n).style.backgroundColor='#b5b5b5'};
function fioOver(n,i){sel=i;
document.getElementById(n).style.backgroundColor='#fff',
document.getElementById('photocell').src="images/stories/sotrudniki/mini/"+photo[i]+"jpg",
document.getElementById('fio1').innerHTML=title[i],
document.getElementById('celldolzhnost').innerHTML=dolzhnost[i],
document.getElementById('cellotdel').innerHTML=base64_decode(otdel[i]),
document.getElementById('cellotdel1').innerHTML=otdel1[i]};
function fioOut(n){document.getElementById(n).style.backgroundColor='#b5b5b5'};

</script>


В это коде выполняется до отметки Ya vypolnilso 11 а след 9ая уже не выполняется....  почему???
Пробовал сократить БД через LIMIT заполнил все пустые поля... пробовал encode decode...
Помогите плиз!!! Проект горит!!!

Автор: IDVsbruck 21.3.2008, 03:41
А при чем тут java-машина?

Автор: bars80080 21.3.2008, 10:56
да и если уж проблемы в javascript, можно выдать нам html страницу с кодом, а не сервереный файл

открываете страницу в браузере, там просмотреть исходный код, сохранить и сюда

Автор: Grig 21.3.2008, 11:32
Код

var max = <?php echo $max ?>;

замените на 
Код

var max = "<?php echo $max ?>";


Добавлено через 3 минуты
а вообще это потому что переменная $max - пустая

Автор: Gwire 2.10.2008, 12:12
Совет:
Воланд и КО попробуте вместо "<?php echo $variable ?>" применять "<?=$variable?>"
smile Улучшает читабельность кода.

Автор: bars80080 2.10.2008, 14:43
в данном случае лучше вообще было писать без разрывов пхп-кода

Код

var dolzhnost = new Array();
<?php $i=0; 
while ($i<$max) { echo 'photo['.$i.'="'.$allfio[$i]->photo.'";'."\r\n"; $i++; }
$i=0; 
while ($i<$max) { echo 'title['.$i.']="'.$allfio[$i]->title.'";'."\r\n"; $i++; } ?>
document.write('Ya vypolnilso 8 ');
читабельно серьёзно улучшается.

а если ещё чуть отшаблонить...

Автор: krundetz 3.10.2008, 07:30
Цитата(Gwire @ 2.10.2008,  12:12)
Совет:
Воланд и КО попробуте вместо "<?php echo $variable ?>" применять "<?=$variable?>"
smile Улучшает читабельность кода.

Читабельность кода может и улучшает но вот не на всех хостингах включина поддержка коротких тегов, да и придложеная вами конструкция считается устаревшей. вполне возможен отказ от нее в далнейших версиях php. как в 6 отказались от 
Код

<%

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)