Помогите пожалуйста с проблемкой.
Есть скрипт в отдельном файле php. Делаю include в нужный документ. Затем, в этом же документе делаю include еще одного скрипта. Проверяю работу (на сайте), все отрабатывается нормально. Через какое-то время (минут пять), обновляю страницу, первый include работает, второй нет. Причем, не работает вся остальная разметка документа, идущая после второго include. В отдельные документы оба скрипта инклюдятся нормально, но вместе работают только одну загрузку страницы.
В какую сторону копать?
Спустя 47 минут, 50 секунд (31.05.2012 - 17:10) Zzepish написал(а):
попробуй либо include_once либо require_once
Спустя 16 часов, 18 минут, 15 секунд (1.06.2012 - 09:29) boomber написал(а):
Нет, к сожалению не работает.
Все тоже самое, Кладу документ на сайт, первый запуск отрабатывается правильно, все скрипты инклюдятся. Через две-три минуты обновляю эту страницу, скрипт, который инклюдится вторым, не работает и не работает разметка страницы, идущая за "невключенным" скриптом.
Может быть будет более понятно: суть, на странице отображаются футбольные турнирные таблицы. Сначала инклюдится скрипт, показывающий турнирную таблицу по возрасту, затем инклюдится другой скрипт таблицы общекомандного зачета. Скрипты по сути похожи, идет запрос к базе по чуть разным критериям. Вот в такой конструкции инклюдов, второй по очереди скрипт вырубается. Даже если меняю их местами, вырубается не один и тот же, а именно второй. На отдельных страницах они работают нормально, без глюков. Но вот на одну страницу мне их никак не удается собрать.
Все тоже самое, Кладу документ на сайт, первый запуск отрабатывается правильно, все скрипты инклюдятся. Через две-три минуты обновляю эту страницу, скрипт, который инклюдится вторым, не работает и не работает разметка страницы, идущая за "невключенным" скриптом.
Может быть будет более понятно: суть, на странице отображаются футбольные турнирные таблицы. Сначала инклюдится скрипт, показывающий турнирную таблицу по возрасту, затем инклюдится другой скрипт таблицы общекомандного зачета. Скрипты по сути похожи, идет запрос к базе по чуть разным критериям. Вот в такой конструкции инклюдов, второй по очереди скрипт вырубается. Даже если меняю их местами, вырубается не один и тот же, а именно второй. На отдельных страницах они работают нормально, без глюков. Но вот на одну страницу мне их никак не удается собрать.
Спустя 3 минуты, 13 секунд (1.06.2012 - 09:32) Ramzil_Nixon написал(а):
Код в студию! Мы не можем гадать!
Спустя 1 минута, 59 секунд (1.06.2012 - 09:34) boomber написал(а):
Коды скриптов?
Спустя 2 минуты, 3 секунды (1.06.2012 - 09:36) killer8080 написал(а):
В начале скрипта
смотри какие ошибки выдает.
error_reporting(E_ALL);
смотри какие ошибки выдает.
Спустя 1 минута, 49 секунд (1.06.2012 - 09:38) Ramzil_Nixon написал(а):
Цитата (boomber @ 1.06.2012 - 06:34) |
Коды скриптов? |
Да
Спустя 7 минут, 22 секунды (1.06.2012 - 09:45) boomber написал(а):
<?php
include ('db.php');
function sortByPoints($a,$b)
{
if($a['points']==$b['points'])
{
$ppg1='SELECT home_score,away_score FROM serp_2012 WHERE tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'" AND home="'.$a.'" AND away="'.$b.'"';
$ppg2='SELECT home_score,away_score FROM serp_2012 WHERE tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'" AND home="'.$b.'" AND away="'.$a.'"';
$res_ppg1=mysql_query($ppg1);
$res_ppg2=mysql_query($ppg2);
$razn1=$res_ppg1['away_score']+$res_ppg2['home_score'];
$razn2=$res_ppg2['away_score']+$res_ppg1['home_score'];
if(empty($res_ppg1['home_score']) OR empty($res_ppg2['home_score']))
{end;}
else
{
if($razn1<$razn2)
{return -1;}
elseif($razn1>$razn2)
{return 1;}
elseif($res_ppg2['away_score']>$res_ppg1['away_score'])
{return -1;}
else
{return 1;}
}
if($a['difference']==$b['difference'])
{return 0;}
elseif($a['difference']>$b['difference'])
{return -1;}
else
{return 1;}
}
elseif($a['points']>$b['points'])
{return -1;}
else
{return 1;}
}
$points='SELECT home, away, home_score, away_score,home_town,away_town FROM serp_2012 WHERE tourn="'.$tourn.'" AND year ="'.$year.'" AND (tourn_g="'.$group_1.'" OR tourn_g="'.$group_2.'")';
$result=mysql_query($points);
if($result)
{
$a=array();
while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
{
$team1=$row['home'];
$team2=$row['away'];
if(!isset($a[$team1]))
{$a[$team1]=array('wins'=>0,'loses'=>0,'goals_a'=>0,'goals_f'=>0,'draws'=>0,'games'=>0,'points'=>0,'difference'=>0);}
if(!isset($a[$team2]))
{$a[$team2]=array('wins'=>0,'loses'=>0,'goals_a'=>0,'goals_f'=>0,'draws'=>0,'games'=>0,'points'=>0,'difference'=>0);}
if ($row['home_score']!=null AND $row['away_score']!=null)
{$a[$team1]['games']++;
$a[$team2]['games']++;}
else
{$a[$team1]['games'];
$a[$team2]['games'];}
if($row['home_score']>$row['away_score'])
{$a[$team1]['wins']++;
$a[$team2]['loses']++;}
elseif($row['home_score']<$row['away_score'])
{$a[$team1]['loses']++;
$a[$team2]['wins']++;}
else
{if ($row['home_score']!=null AND $row['away_score']!=null)
{$a[$team1]['draws']++;
$a[$team2]['draws']++;}
else
{$a[$team1]['draws'];
$a[$team2]['draws'];}
}
$a[$team1]['points']=+$a[$team1]['wins']*3+$a[$team1]['draws']*1;
$a[$team2]['points']=+$a[$team2]['wins']*3+$a[$team2]['draws']*1;
$a[$team1]['goals_a']+=$row['home_score'];
$a[$team2]['goals_a']+=$row['away_score'];
$a[$team2]['goals_f']+=$row['home_score'];
$a[$team1]['goals_f']+=$row['away_score'];
$a[$team1]['difference']=$a[$team1]['goals_a']-$a[$team1]['goals_f'];
$a[$team2]['difference']=$a[$team2]['goals_a']-$a[$team2]['goals_f'];
$a[$team1]['town']=$row['home_town'];
$a[$team2]['town']=$row['away_town'];
}
uasort($a,'sortByPoints');
$q2=array();
echo "<table border=1 cellspacing=0 class=table>";
echo "<tr bgcolor=#CCCCCC>";
echo "<th class=table>№</th><th class=table>Команда</th>";
echo "<th class=table>Игры</th><th class=table>В</th><th class=table>Н</th><th class=table>П</th><th class=table>Голы</th><th class=table>Очки</th></tr>";
$l=1;
foreach($a as $q2team=>$qq2)
{
echo "<tr><td align=center width=20 class=table>$l</td>";
echo "<td width=250 class=table align=left>\"$q2team\" ({$qq2['town']})</td>";
echo "<td align=center width=50 class=table>{$qq2['games']}</td>";
echo "<td align=center width=30 class=table>{$qq2['wins']}</td>";
echo "<td align=center width=30 class=table>{$qq2['draws']}</td>";
echo "<td align=center width=30 class=table>{$qq2['loses']}</td>";
echo "<td align=center width=60 class=table>{$qq2['goals_a']}-{$qq2['goals_f']}</td>";
echo "<td align=center width=45 class=table><strong>{$qq2['points']}</strong></td>";
echo "</tr>";
$l++;
}
echo "</table><br>";
}
else
{
die(mysql_error());
}
mysql_free_result($points);
mysql_close($points);
?>
Спустя 5 минут, 49 секунд (1.06.2012 - 09:51) boomber написал(а):
Цитата (killer8080 @ 1.06.2012 - 06:36) |
В начале скриптаerror_reporting(E_ALL); смотри какие ошибки выдает. |
Вставил в начало вышеприведенного скрипта (именно он сейчас у меня идет вторым и "вырубился"). На странице ничего не вывелось. Просто также скрипт не работает, разметка html, идущая после инклюда скрипта тоже не работает.
Спустя 21 минута, 38 секунд (1.06.2012 - 10:12) killer8080 написал(а):
Цитата (boomber @ 1.06.2012 - 09:51) |
Вставил в начало вышеприведенного скрипта (именно он сейчас у меня идет вторым и "вырубился"). |
вставлять его нужно в начале главного скрипта, где все инклюдиться.
Спустя 50 минут, 20 секунд (1.06.2012 - 11:03) boomber написал(а):
Цитата (killer8080 @ 1.06.2012 - 07:12) | ||
вставлять его нужно в начале главного скрипта, где все инклюдиться. |
Вставил, никаких ошибок не выводится.
Вообще, у меня есть подозрение, что что-то не так с конструкцией именно инклюда.
Сначала была конструкция: include ('/scripts/tab_2012.php');
Вот с ней и были вышеописанные проблемы.
Сегодня поправил на: include ('../scripts/tab_2012.php');
В результате, несколько минут работает все нормально, затем перестают работать все скрипты, но корректно. То есть, просто не работают скрипты, а разметка не летит.
Спустя 12 минут, 27 секунд (1.06.2012 - 11:15) Zzepish написал(а):
../ - переход на каталог выше :\
Спустя 3 минуты, 39 секунд (1.06.2012 - 11:19) boomber написал(а):
Цитата (Zzepish @ 1.06.2012 - 08:15) |
../ - переход на каталог выше :\ |
Да. По структуре страница лежит в /tables (там инклюдятся скрипты).
Сами скрипты лежат в /scripts.
Соответственно, инклюдя внутри /tables я перехожу на уровень вверх и иду в /scripts.
Собственно, работало и без ../. Просто заметил, поправил.
Спустя 3 дня, 3 часа, 6 минут, 31 секунда (4.06.2012 - 14:25) boomber написал(а):
Ни у кого нет никаких мыслей, почему скрипты вместе на странице не работают?