Вот написал код кто соображает нет ли тут дыр?
<?php
define('_IN_JOHNCMS', 1);
$headmod ="";
$textl = 'Анекдоты';
$rootpath = '../';
require_once ("../incfiles/core.php");
require_once ("../incfiles/head.php");
header("Content-type:text/html; charset=utf-8");
$file = file('base.dat');
$id = array_rand($file, 1);
if($_GET['act']=='include')
{
echo htmlspecialchars($file[$id], ENT_NOQUOTES, 'UTF-8');
}
else
{
echo '<img src="anekdot.png" alt="*"/>';
echo htmlspecialchars($file[$id], ENT_NOQUOTES, 'UTF-8');
echo '<div class="phdr"><table style="width: 100%;"><tr><td valign="bottom"><b>Всего: '.sizeof($file).'</b></td><td align="right"><a href="two.php">Ещё</a></td></tr></table></div>';
}
require_once ("../incfiles/end.php");
?>
Помойму всё сделано нормально!
недочет есть. поменяй
require_once ("../incfiles/head.php");
и
header("Content-type:text/html; charset=utf-8");
местами
ибо в head вывод шапки идет, а заголовки должны отправляться до любого вывода
Что поменять напиши конкретно
Afank,
я кажется выделил жирным что нужно заменить
----
<?php
define('_IN_JOHNCMS', 1);
$headmod ="";
$textl = 'Анекдоты';
$rootpath = '../';
require_once ("../incfiles/core.php");
header("Content-type:text/html; charset=utf-8");
require_once ("../incfiles/head.php");
$file = file('base.dat');
$id = array_rand($file, 1);
if($_GET['act']=='include')
{
echo htmlspecialchars($file[$id], ENT_NOQUOTES, 'UTF-8');
}
else
{
echo '<img src="anekdot.png" alt="*"/>';
echo htmlspecialchars($file[$id], ENT_NOQUOTES, 'UTF-8');
echo '<div class="phdr"><table style="width: 100%;"><tr><td valign="bottom"><b>Всего: '.sizeof($file).'</b></td><td align="right"><a href="two.php">Ещё</a></td></tr></table></div>';
}
require_once ("../incfiles/end.php");
?>
Afank (11.06.2012/06:36)
Что поменять напиши конкретно
местами поменяй то что он дал, заголовки должны быть вверху а вывод ниже.
Afank (10.06.2012/20:29)
Вот написал код кто соображает нет ли тут дыр?
[php]<?php
define('_IN_JOHNCMS', 1);
$headmod ="";
$textl = 'Анекдоты';
$rootpath = '../';
require_once ("../incfiles/core.php");
require_once (
А разве $_GET['act'] фильтровать ненадо?
elkol, нет, он используется только в условии
Ну а какие тут могут быть дырки?… происходит вывод записей, ни какой выборки из таблиц нет, записей в неё тоже.
Сам файл имеет права только чтение и кода записи в дат файл я тоже не вижу)