Пробежался глазами по коду:
Вот еще одна инъекция:
person.php
Код: Выделить всё
if (isset ($_GET['ActorID'])) {(int)$ActorID = $_GET['ActorID'];}
Ошибка в логике:
left_index.phpКод: Выделить всё
if (isset ($year))
{
$result = odbc_exec($db,"SELECT * FROM movies WHERE year='$year' ORDER BY Name ASC");
odbc_longreadlen ($result, 51200);
$myrow = odbc_fetch_array($result);
}
if (isset ($mediatypeID))
{
$result = odbc_exec($db,"SELECT * FROM movies WHERE MediaTypeID=$mediatypeID ORDER BY Name ASC");
odbc_longreadlen ($result, 51200);
$myrow = odbc_fetch_array($result);
}
if (isset ($GenreID))
{
$result = odbc_exec($db,"SELECT * FROM Genres g, GenresLink gl, movies m WHERE g.GenreID=$GenreID AND gl.GenreID=g.GenreID AND m.MovieID=gl.MovieID ORDER BY m.Name");
odbc_longreadlen ($result, 51200);
$myrow = odbc_fetch_array($result);
}
Если будет верным будет более одного условия, то
$myrow примет значение последнего запроса. Если нужно только одно значение,
else if лучше использовать, чтобы интерпретатор лишний раз эти условия не проверял. Аналогично и с предыдущими конструкциями по проверке
$RadioGroup.
Код: Выделить всё
/*Получение ID обложки*/
$result0 = odbc_exec($db,"SELECT ID FROM images WHERE MovieID=$MovieID AND cover=-1");
$myrow0 = odbc_fetch_array($result0);
/*Получение ID скриншотов*/
$result_scr = odbc_exec($db,"SELECT ID FROM images WHERE MovieID=$MovieID AND cover=0");
$myrow_scr = odbc_fetch_array($result_scr);
Зачем 2 однотипных запроса?О_о
Код: Выделить всё
if ($myrow['rating']==0)
{
echo "
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>";
}
if ($myrow['rating']>=1 and $myrow['rating']<10)
{
echo "
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=10 and $myrow['rating']<20)
{
echo "
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=20 and $myrow['rating']<30)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=30 and $myrow['rating']<40)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=40 and $myrow['rating']<50)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=50 and $myrow['rating']<60)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=60 and $myrow['rating']<70)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=70 and $myrow['rating']<80)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=80 and $myrow['rating']<90)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=90 and $myrow['rating']<100)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']==100)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
Это можно в цикле обработать, например так:
Код: Выделить всё
$rating = round( $myrow['rating'] / 10, 1 );
for ( $i == 0; $i <= 10; $i = $i + 2 )
{
if ( $rating > $i && $rating >= $i + 2 )
{
$img = 'img/star.gif';
}
else if ( $rating > $i && $rating < $i + 2 )
{
$img = 'img/star_half.gif';
}
else
{
$img = 'img/star_half.gif';
}
print( '<img src="' . $img . '" width="20" height="20" alt="Рейтинг фильма" title="Рейтинг фильма">' )
}
Код менее громоздкий, плюс изменять его легко.
right_index.phpКод: Выделить всё
$db = odbc_connect ('mydb','','');
$result_years = odbc_exec($db,"SELECT year FROM movies ORDER BY year DESC");
$myrow_years = odbc_fetch_array($result_years);
$years_begin = $myrow_years[year];
$result_years = odbc_exec($db,"SELECT year FROM movies ORDER BY year ASC");
$myrow_years = odbc_fetch_array($result_years);
$years_finish = $myrow_years[year];
Помоему в ODBC должны быть статистические функции
MIN() и
MAX()... То есть, не обязательно выбирать все значения дважды, а можно выбрать 2 поля для одного запроса:
MIN(year), MAX(year).
Почему-то не нашел откуда берется
$MovieID, неужели register_globals? Если так, то нужно по-человечски написать, ибо не у всех он включен...