Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Интеграция php функций в javascript (https://javascript.ru/forum/server/16337-integraciya-php-funkcijj-v-javascript.html)

Master_Zu 04.04.2011 15:58

Интеграция php функций в javascript
 
Добрый день!

Возникла необходимости обновлять информацию на веб-странице без использования рефреша (F5). После загрузки страницы с интервалом в одну секунду скрипт, посредством php, должен обращаться к базе данных и выводить значение. Однако по факту скрипт выполняется лишь единожды (если значение в базе изменилось, то на экране оно остается таким, каким было при загрузке страницы и для его изменения так или иначе приходится использовать F5)

<script>
$(document).ready(function checkTeam(){
$("#team").replaceWith("<font id='team' size=1><?php $ifuse=checkBase($myrow['table_num']); $whatthepict=selectImage($myrow['table_num']);
echo "<img src='img/$whatthepict' width=12px></img>"; echo "&nbsp$ifuse";?></font>");
setInterval('checkTeam()',1000);
});
</script>

echo "<font id='team' size=1>&nbsp&nbsp&nbsp&nbspLoading...&nbsp;&nbsp;& nbsp;</font>";

// Значение переменной
function checkBase($tn)
{
$t1 = mysql_query ("SELECT value,table_num FROM teamctrl WHERE id='1'");
$t = mysql_fetch_array ($t1);
if ($t['value']=='0'){$use = '(Teamviewer свободен)';}
else{if ($t['table_num']==$tn){$use = '(Вы используете Teamviewer)';}
else{$use = '(Teamviewer занят)';}}
return $use;
}
// Путь к файлу с картинкой
function selectImage($tn)
{
$t1 = mysql_query ("SELECT value,table_num FROM teamctrl WHERE id='1'");
$t = mysql_fetch_array ($t1);
if ($t['value']=='0'){$pict = 'team_green.png';}
else{if ($t['table_num']==$tn){$pict = 'team_yellow.png';}
else{$pict = 'team_red.png';}}
return $pict;
}

dmitriymar 04.04.2011 16:21

юзай ajax

micscr 04.04.2011 16:26

Master_Zu, ты что - первый раз в жизни зашел на форум программистов и не знаешь, что текст кода надо оформлять тегами форматирования?

melky 04.04.2011 16:38

Цитата:

Сообщение от Master_Zu (Сообщение 99214)
Добрый день!


$(function(){
$("#team").replaceWith("<font id='team' size=1><?php $ifuse=checkBase($myrow['table_num']); $whatthepict=selectImage($myrow['table_num']);
echo "<img src='img/$whatthepict' width=12px></img>"; echo "&nbsp$ifuse";?></font>");
setInterval('checkTeam()',1000);
});


смешались в кучу кони, люди...

ты бы еще прошелся по скрипту минификатором и выложил сюда. .. минификатором от гугла в адвансед

а $ в js и $ из пыхи отлично гармонируют друг с другом.

спасибо!

аж физику поучить потянуло от такой тягомотины

Master_Zu 04.04.2011 16:43

micscr Master_Zu, ты что - первый раз в жизни зашел на форум программистов и не знаешь, что текст кода надо оформлять тегами форматирования?

Как ни странно, но да. Приношу свои извинения. Вот код:

<script>
$(document).ready(function checkTeam(){
$("#team").replaceWith("<font id='team' size=1><?php $ifuse=checkBase($myrow['table_num']); $whatthepict=selectImage($myrow['table_num']);
echo "<img src='img/$whatthepict' width=12px></img>"; echo "&nbsp$ifuse";?></font>");
setInterval('checkTeam()',1000);
});
</script>

echo "<font id='team' size=1>&nbsp&nbsp&nbsp&nbspLoading...&nbsp;&nbsp;& nbsp;</font>";

// Значение переменной 
function checkBase($tn)
{
$t1 = mysql_query ("SELECT value,table_num FROM teamctrl WHERE id='1'");
$t = mysql_fetch_array ($t1);
if ($t['value']=='0'){$use = '(Teamviewer свободен)';}
else{if ($t['table_num']==$tn){$use = '(Вы используете Teamviewer)';}
else{$use = '(Teamviewer занят)';}}
return $use;
}
// Путь к файлу с картинкой
function selectImage($tn)
{
$t1 = mysql_query ("SELECT value,table_num FROM teamctrl WHERE id='1'");
$t = mysql_fetch_array ($t1);
if ($t['value']=='0'){$pict = 'team_green.png';}
else{if ($t['table_num']==$tn){$pict = 'team_yellow.png';}
else{$pict = 'team_red.png';}}
return $pict;
}


Часовой пояс GMT +3, время: 08:28.