UWAGA: W PHP wykryto krytyczne podatności, przez które Wasze strony/fora mogą zostać zhakowane! Dzisiaj mają być udostępnione poprawione wersje, warto monitorować i ustawić odpowiendie wersje PHP na swom serwerze.
Poprawki będę zawarte w wersjach PHP: 8.5.12, 8.4.27, 8.3.36 oraz 8.2.35! Jeśli używacie jeszcze wersje PHP 7.x lub 8.0.x lub 8.1.x, należy, jak najszybciej podnieść wersje PHP i/lub zaktualizować swoje fora!
Do momentu wdrożenia oficjalnej łatki, ryzyko ataku można drastycznie zmniejszyć poprzez zmianę konfiguracji w pliku php.ini:
Ustaw: session.upload_progress.enabled = Off
Albo np., można zrobić: https://ma.ttias.be/php-cve-2026-109618 ... itigation/
Dla serwera Apache ustaw w pliku .htaccess
i/lub - nie testowałem
Dla nginx
_____________________________________________________
Pojawiła się nowa wersja systemu - phpBB 3.3.19. Ostatnie wydania (od wersji 3.3.17 do najnowszej) przynoszą kluczowe poprawki, które chronią Twoje forum przed zagrożeniami i dbają o spokój Twojej społeczności. Polecam nie odkładać tego na później, tyllko zaktualizować fora!
Polski pakiet językowy dla phpBB 3.3.19
Poprawki będę zawarte w wersjach PHP: 8.5.12, 8.4.27, 8.3.36 oraz 8.2.35! Jeśli używacie jeszcze wersje PHP 7.x lub 8.0.x lub 8.1.x, należy, jak najszybciej podnieść wersje PHP i/lub zaktualizować swoje fora!
Do momentu wdrożenia oficjalnej łatki, ryzyko ataku można drastycznie zmniejszyć poprzez zmianę konfiguracji w pliku php.ini:
Ustaw: session.upload_progress.enabled = Off
Albo np., można zrobić: https://ma.ttias.be/php-cve-2026-109618 ... itigation/
Dla serwera Apache ustaw w pliku .htaccess
Kod: Zaznacz cały
RewriteEngine On
RewriteCond %{HTTP:Content-Type} multipart/form-data [NC]
RewriteRule ^ - [F]Kod: Zaznacz cały
<If "req('Content-Type') =~ /multipart/i">
Require all denied
</If>Dla nginx
Kod: Zaznacz cały
# http {} context, e.g. /etc/nginx/conf.d/block-multipart.conf
map $http_content_type $block_multipart {
default 0;
"~*multipart" 1;
}
# inside every server {} that passes requests to PHP, including default/catch-all servers
if ($block_multipart) {
return 403;
}Pojawiła się nowa wersja systemu - phpBB 3.3.19. Ostatnie wydania (od wersji 3.3.17 do najnowszej) przynoszą kluczowe poprawki, które chronią Twoje forum przed zagrożeniami i dbają o spokój Twojej społeczności. Polecam nie odkładać tego na później, tyllko zaktualizować fora!
Polski pakiet językowy dla phpBB 3.3.19
Zaincludowanie rotatora bannerów w headerze pod menu. Jak??
Zaincludowanie rotatora bannerów w headerze pod menu. Jak??
Witam. Jaki plik mam wyedytować, by dołączyć include z rotatoram bannerów?
Chodzi o miejsce pod menu.
Dzięki z góry
Chodzi o miejsce pod menu.
Dzięki z góry
No tak tylko ja jestem totalny lamer jeśli chodzi o uskutecznianie jakichkolwiek działań na polu PHP
mam kod:
rozumiem, że to dodaję do pliku includes/page_header.php
A co mam zatem zrobić w tym drugim?
mam kod:
Kod: Zaznacz cały
<? include "adsrv/ad.php"; ?>A co mam zatem zrobić w tym drugim?
A zatem...
Otwierasz includes/page_header.php i szukasz:
i NAD tym dopisujesz:
Zapisujesz, zamykasz.
Potem otwierasz templates/twoj_styl/overall_header.tpl i wklejasz:
tam, gdzie chcesz mieć rotator... Ależ ja nie lubie takich akcji :p...
Otwierasz includes/page_header.php i szukasz:
Kod: Zaznacz cały
'ADMIN_LINK' => $admin_link)Kod: Zaznacz cały
'ROTATOR' => require_once('adsrv/ad.php'),Potem otwierasz templates/twoj_styl/overall_header.tpl i wklejasz:
Kod: Zaznacz cały
{ROTATOR}ad.php
Kod: Zaznacz cały
<?
$datafile="adsrv/data/baner.dat";
require "adsrv/config.php";
if(!file_exists($datafile)){
echo "Nie odnaleziono pliku zawierającego dane bannerów!";
} else {
$table=file($datafile);
$all=count($table);
$last=$all-1;
rsort($table, SORT_NUMERIC);
reset($table);
while($banner_found!="1"){
$data=explode("*|*", $table[$last]);
$data[14]=trim($data[14]);
if($data[4]==0 && $data[6]=="1"){
if($data[5]==0 || $data[5]>$data[3]){
$banner_found="1";
break;
}
}
if($data[4]>$data[2] && $data[6]=="1"){
if($data[5]==0 || $data[5]>$data[3]){
$banner_found="1";
break;
}
}
if($data[6]!="1" || $data[4]<=$data[2] || $data[5]<=$data[3] && $data[4]!=0){
$last--;
}
if($last<0){
$empty="1";
$banner_found="1";
}
}
if($empty=="1"){
if($default_baner!=""){
if($default_url!="" && !eregi("@", $default_url)){
echo "<a href=\"$default_url\" target=_blank>";
}elseif($default_url!="" && eregi("@", $default_url)){
echo "<a href=\"mailto:$default_url\">";
}
echo "<img src=\"$default_baner\" border=\"0\"></a>";
}else {
echo "<b>Brak bannerów!</b>
<!-- Powered by PHPFlash Banner Asystent v1.5 (www.phpflash.w.pl)
wszelkie prawa zastrzeżone! -->";
}
} else {
$id=$data[10];
echo "<a href=\"adsrv/go.php?id=$id\" target=_blank><img src=\"$data[12]\" width=\"$data[8]\" height=\"$data[9]\" alt=\"$data[13]\" border=\"0\"></a>
<!-- Powered by PHPFlash Banner Asystent v1.5 (www.phpflash.w.pl)
wszelkie prawa zastrzeżone! -->";
$table=file($datafile);
$f=fopen($datafile, "w");
flock($f, 2);
for($i=0; $i<$all; $i++){
$data=explode("*|*", $table[$i]);
$data[14]=trim($data[14]);
if($data[10]==$id && $banner_found=="1"){
$data[0]++;
$data[2]++;
}
$write_str="$data[0]*|*$data[1]*|*$data[2]*|*$data[3]*|*$data[4]*|*$data[5]*|*$data[6]*|*$data[7]*|*$data[8]*|*$data[9]*|*$data[10]*|*$data[11]*|*$data[12]*|*$data[13]*|*$data[14]\n";
if($data[10]!=""){
fputs($f, $write_str);
}
}
flock($f, 3);
fclose($f);
}
}
?>A zróbmy ad.php tak:
Dopisz pod samo <? w includes/page_header.php:
potem znajdź w tym pliku tą linijkę to ci podałem tam...
A nie, czekaj... Cholera, teraz widzę mój błąd... Ta linijka, co ci wyżej podałem jest w page_footer.php... Znajdź w page_header.php:
i pod tym dopisz:
i powinno chyba działać dobrze
...
@edit:
no i oczywiście w templates/twoj_styl/overall_header.tpl kodzik:

Kod: Zaznacz cały
<?
function showhere() {
$datafile="adsrv/data/baner.dat";
require "adsrv/config.php";
if(!file_exists($datafile)){
return "Nie odnaleziono pliku zawierającego dane bannerów!";
} else {
$table=file($datafile);
$all=count($table);
$last=$all-1;
rsort($table, SORT_NUMERIC);
reset($table);
while($banner_found!="1"){
$data=explode("*|*", $table[$last]);
$data[14]=trim($data[14]);
if($data[4]==0 && $data[6]=="1"){
if($data[5]==0 || $data[5]>$data[3]){
$banner_found="1";
break;
}
}
if($data[4]>$data[2] && $data[6]=="1"){
if($data[5]==0 || $data[5]>$data[3]){
$banner_found="1";
break;
}
}
if($data[6]!="1" || $data[4]<=$data[2] || $data[5]<=$data[3] && $data[4]!=0){
$last--;
}
if($last<0){
$empty="1";
$banner_found="1";
}
}
if($empty=="1"){
if($default_baner!=""){
if($default_url!="" && !eregi("@", $default_url)){
return "<a href=\"$default_url\" target=_blank>";
}elseif($default_url!="" && eregi("@", $default_url)){
return "<a href=\"mailto:$default_url\">";
}
return "<img src=\"$default_baner\" border=\"0\"></a>";
}else {
return "<b>Brak bannerów!</b>
<!-- Powered by PHPFlash Banner Asystent v1.5 (www.phpflash.w.pl)
wszelkie prawa zastrzeżone! -->";
}
} else {
$id=$data[10];
return "<a href=\"adsrv/go.php?id=$id\" target=_blank><img src=\"$data[12]\" width=\"$data[8]\" height=\"$data[9]\" alt=\"$data[13]\" border=\"0\"></a>
<!-- Powered by PHPFlash Banner Asystent v1.5 (www.phpflash.w.pl)
wszelkie prawa zastrzeżone! -->";
$table=file($datafile);
$f=fopen($datafile, "w");
flock($f, 2);
for($i=0; $i<$all; $i++){
$data=explode("*|*", $table[$i]);
$data[14]=trim($data[14]);
if($data[10]==$id && $banner_found=="1"){
$data[0]++;
$data[2]++;
}
$write_str="$data[0]*|*$data[1]*|*$data[2]*|*$data[3]*|*$data[4]*|*$data[5]*|*$data[6]*|*$data[7]*|*$data[8]*|*$data[9]*|*$data[10]*|*$data[11]*|*$data[12]*|*$data[13]*|*$data[14]\n";
if($data[10]!=""){
fputs($f, $write_str);
}
}
flock($f, 3);
fclose($f);
}
}
}
?>Kod: Zaznacz cały
require_once('adsrv/ad.php');A nie, czekaj... Cholera, teraz widzę mój błąd... Ta linijka, co ci wyżej podałem jest w page_footer.php... Znajdź w page_header.php:
Kod: Zaznacz cały
'SITENAME' => $board_config['sitename'],Kod: Zaznacz cały
'ROTATOR' => showhere(),@edit:
no i oczywiście w templates/twoj_styl/overall_header.tpl kodzik:
Kod: Zaznacz cały
{ROTATOR}Nie musisz...możesz jedynie dać "+" 
Chociaż, jeśli jesteś dobrym grafikiem, to poprzednie zdanie nie istnieje
...
@edit:
...gdybym sobie wcześniej przypomniał, że sam przenosiłem link do admina ze stopki do menu, to by to szybciej poszło... Ależ ja głupi jestem
...
Chociaż, jeśli jesteś dobrym grafikiem, to poprzednie zdanie nie istnieje
@edit:
...gdybym sobie wcześniej przypomniał, że sam przenosiłem link do admina ze stopki do menu, to by to szybciej poszło... Ależ ja głupi jestem
Ostatnio zmieniony 30 lipca 2005, 19:17 przez MSX2, łącznie zmieniany 1 raz.
A nie dałeś czasem
pomiędzy...
a
Musiałeś tak dać, bo to nie ma różnicy przy tym kodzie, czy user jest zalogowany, czy nie o_O...
Kod: Zaznacz cały
{ROTATOR]Kod: Zaznacz cały
<!-- BEGIN switch_user_logged_out -->Kod: Zaznacz cały
<!-- END switch_user_logged_out -->Musiałeś tak dać, bo to nie ma różnicy przy tym kodzie, czy user jest zalogowany, czy nie o_O...
