[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: include, или куда копать?
Страницы: 1, 2
boomber
Здравствуйте.
Имеется следующая проблема.
Есть скрипт футбольной таблицы. Есть страница, где задаются простые переменные (название турнира, группа и т.д.) и куда этот скрипт инклюдится. Если я пытаюсь на этой странице сделать инклюд скрипта два раза (для двух групп турнира) то первый инклюд происходит нормально, а второй вообще не происходит. То есть, таблица не появляется вообще. Более того, код самой страницы при отображении в броузере полностью обрывается на этом месте. Пропадает весь остальной html-код и вообще все, что идет после попытки второго инклюда.
Не могу понять, в какую сторону копать. Сам скрипт таблицы единожды обрабатывается нормально.
123456
замени include_once на include
boomber
Цитата (123456 @ 30.09.2015 - 06:06)
замени include_once на include

Так и делаю.
Если бы я делал include_once, весь остальной код страницы не пропадал.
Никак не могу понять, куда копать. Инклюд? Или может в памяти что остается после первого инклюда (запросы к БД, данные для таблицы)? Или сам скрипт неправильно как-то заканчивается. Кодер я неопытный, а скрипт написан давно очень. С ходу в нем ничего не могу найти ошибочного. И он в первый раз обрабатывается же нормально.
clocwerk
Цитата
Или сам скрипт неправильно как-то заканчивается.


Как тебе кто нибудь может подсказать не видя твоего когда, предоставь хотя бы кусок кода, и опять же у тебя стоит выовд ошибок? error_reporting(E_ALL) к примеру, если нет то поставь и какие ошибки выводяться тоже надо на форум скинуть, иначе никто не поможет
boomber
Цитата (clocwerk @ 30.09.2015 - 06:20)
Как тебе кто нибудь может подсказать не видя твоего когда, предоставь хотя бы кусок кода, и опять же у тебя стоит выовд ошибок? error_reporting(E_ALL) к примеру, если нет то поставь и какие ошибки выводяться тоже надо на форум скинуть, иначе никто не поможет

Да без проблем могу скрипт:
include ('db.php');
function sortByPoints($a,$b)
{ //начало функции

if($a['points']==$b['points'])
{ //начало сортировки при равенстве очков

$ppg_a='SELECT home_score,away_score FROM table WHERE tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'" AND home="'.$a.'" AND away="'.$b.'"';
$res_a=mysql_query($ppg_a);
$g_a = mysql_fetch_array($res_a);

$ppg_b='SELECT home_score,away_score FROM table WHERE tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'" AND home="'.$b.'" AND away="'.$a.'"';
$res_b=mysql_query($ppg_b);
$g_b = mysql_fetch_array($res_b);

$razn_a=$g_a['home_score']+$g_b['away_score'];
$razn_b=$g_b['home_score']+$g_a['away_score'];

if($razn_a==$razn_b)
{ //начало сортировки при равенстве мячей между командами
if($a['difference']==$b['difference'])
{ //начало сортировки при равенстве забитых и пропущенных мячей
if($a['goals_f']==$b['goals_f']) {return 0;}
elseif($a['goals_f']>$b['goals_f']) {return -1;}
else {return 1;}
}
//конец сортировки при равенстве забитых и пропущенных мячей

elseif($a['difference']>$b['difference']) {return -1;}
else {return 1;}
}
//конец сортировки при равенстве мячей между командами

if($razn_a>$razn_b) {return -1;}
else {return 1;}


if($a['wins']>$b['wins']) {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 table WHERE tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'"';
$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,'penalty'=>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,'penalty'=>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'];
}
}


if (empty($penalty[$team1]['penalty_points'])) {end;} else {$a[$team1]['penalty']=+$penalty[$team1]['penalty_points'];}
if (empty($penalty[$team2]['penalty_points'])) {end;} else {$a[$team2]['penalty']=+$penalty[$team2]['penalty_points'];}

$a[$team1]['points']=+$a[$team1]['wins']*3+$a[$team1]['draws']*1-$a[$team1]['penalty'];
$a[$team2]['points']=+$a[$team2]['wins']*3+$a[$team2]['draws']*1-$a[$team2]['penalty'];
$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'];

}

// сортируешь с помошью функции сортировки sortByPoints
uasort($a,'sortByPoints');
// вывод из массива

//ИТОГОВАЯ ШАХМАТКА!!!

$tours=count($a);
$q20=array();
$tours_c=1;
echo "<table border=1 cellspacing=0 class=table>";
echo "<tr bgcolor=#CCCCCC>";
echo "<th class=table>№</th><th class=table>Команда</th>";
while ($tours_c!=$tours+1) {echo "<th class=table>$tours_c</th>";
$tours_c++;}
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 $q20team=>$qq20)
{ //1 цикл начался (выводит список команд - столбец 2)
if (Нужный город==$qq20['town']) {$font="#FFFFCC";} else {$font="#FFFFFF";}
$q30=array();

echo "<tr bgcolor=$font><td align=center width=20 class=table>$l</td>";
echo "<td width=260 class=table align=left>\"$q20team\" ({$qq20['town']})</td>";
foreach($a as $ddteam=>$qq)
{ // 2 цикл начался (выводит результаты между командой из первого цикла и объявленной командой 2 цикла)
if ($q20team!=$ddteam) {
$query40 = '(SELECT id,home,away,home_score,away_score FROM table WHERE home="'.$q20team.'" AND away="'.$ddteam.'" AND tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'")
UNION ALL
(SELECT id,home,away,home_score,away_score FROM table WHERE home="'
.$ddteam.'" AND away="'.$q20team.'" AND tourn="'.$tourn.'" AND tourn_g="'.$group.'" AND sport ="'.$sport.'" AND year ="'.$year.'")
ORDER BY id'
;
$result40 = mysql_query($query40) or die(mysql_error());
echo '<td align="center" width="40" class=table>';
while($p40 = mysql_fetch_array($result40)) { //начался вайл
if ($p40['home']==$q20team AND $p40['home_score']>$p40['away_score']) {$mcol1="#FF0000";} else {if ($p40['home']==$q20team AND $p40['home_score']<$p40['away_score']) {$mcol1="#000000";} else {$mcol1="#0066FF";}}
if ($p40['away']==$q20team AND $p40['away_score']>$p40['home_score']) {$mcol2="#FF0000";} else {if ($p40['away']==$q20team AND $p40['away_score']<$p40['home_score']) {$mcol2="#000000";} else {$mcol2="#0066FF";}}
if (!isset($p40['home_score']) AND !isset($p40['away_score'])) {echo " <br>";} else {
if ($p40['home']==$q20team) { echo '<font color='.$mcol1.'>'.$p40['home_score'].':'.$p40['away_score'].'</font><br>';}
else {echo '<font color='.$mcol2.'>'.$p40['away_score'].':'.$p40['home_score'].'</font><br>';}}
}
// закончился вайл
echo "</td>";} else {echo '<td align="center" width="30" class=table bgcolor=#000000>';}
}
// 2 цикл кончился
echo "<td align=center width=40 class=table>{$qq20['games']}</td>";
echo "<td align=center width=30 class=table>{$qq20['wins']}</td>";
echo "<td align=center width=30 class=table>{$qq20['draws']}</td>";
echo "<td align=center width=30 class=table>{$qq20['loses']}</td>";
echo "<td align=center width=60 class=table>{$qq20['goals_a']}-{$qq20['goals_f']}</td>";
echo "<td align=center width=45 class=table><strong>{$qq20['points']}</strong></td>";
echo "</tr>";
$l++;
} // 1 цикл кончился

echo "</table><br>";
}
else
{
die(mysql_error());
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.