Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skryp Księgi Gości
Forum PHP.pl > Forum > Gotowe rozwiązania
czapar
na stronie www.zofol.piwko.pl umieściłem gotowy skrypt ksiegi gości. Prawie wszystko działa poprawnie, ale nie da sie wpisywać wpisów do ksiegi. Wyskakuje komunikat "Brak Uprawnień". Nadałem chmody jak należy. Czy ktoś mógłby mi pomóc questionmark.gif :?:
kalinowski
czary mary czary mary bledem bedzie .... smile.gif
moz bys podal jakies kody questionmark.gif
czapar
a konkretnie to jakie questionmark.gif
czachor
Zapodaj najlepiej cały, a jak jest długi, to tylko część (logiczną) odpowiadającą za wyświetlenie "Brak uprawnień".
czapar
[php:1:6bfe7b6a56]<?php
<?
require("includy/config.inc");
require("includy/top_admin.inc");
if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");
?>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
<meta http-equiv="Reply-to" content="kess@snug.pl">
<meta http-equiv="Content-Language" content="pl">
<meta name="Author" content="Krzysztof Szypulski">
<link rel="stylesheet" href="ksiega.css" type="text/css">
<title><? echo $title;?></title>
</head>
<body onload="window.status='<? echo $status?>'">
<?= $naglowek;?>
<?
//sprawdzenie Tlena
if ($tlen != ""){
$spr_tlen = substr ($tlen, 0, strpos($tlen, '@'));
if ($spr_tlen != ""){
$tlen = $spr_tlen;
}
}
//spradzenie GG
if ($gg != ""){
if (!eregi("^[0-9]{1,10}$", $gg)){
echo "<table align=center><tr><td class=ramka align=center><img src=image/stop.gif align=middle> <font color=#FF0000><b>Nr Gadu-Gadu powinien zawierać tylko cyfry!</b></font><br><br><a href="java script:history.back()"><img src=image/popraw.gif alt="wróć i popraw"></a></td></tr></table>";
$s_gg = 1;
}
}
//spradzenie ICQ
if (($icq != "") && (empty($s_gg))){
if (!eregi("^[0-9]{1,10}$", $icq)){
echo "<table align=center><tr><td class=ramka align=center><img src=image/stop.gif align=middle> <font color=#FF0000><b>Nr ICQ powinien zawierać tylko cyfry!</b></font><br><br><a href="java script:history.back()"><img src=image/popraw.gif alt="wróć i popraw"></a></td></tr></table>";
$s_icq = 1;
}
}
//sprawdzenie email
if (($e_mail != "") && (empty($s_gg)) && (empty($s_icq))){
if (!eregi("^[^@ ]+@[^@ ]+.[^@ .]+$", $e_mail)){
echo "<table align=center><tr><td class=ramka align=center><img src=image/stop.gif align=middle> <font color=#FF0000><b>Błędny Email!!!</b></font><br>Jeżeli wpisujesz email wpisz go poprawnie, w przeciwnym razie pozostaw pole puste!<br><br><a href="java script:history.back()"><img src=image/popraw.gif alt="wróć i popraw"></a></td></tr></table>";
$s_ma = 1;
}
}
//sprawdzenie URL
if (($strona != "") && (empty($s_gg)) && (empty($s_icq)) && (empty($s_ma))){
if (!eregi("^http://[^ ]+$", $strona)){
echo "<table align=center><tr><td class=ramka align=center><img src=image/stop.gif align=middle> <font color=#FF0000><b>Błędny URL!!!</b></font><br>Adres URL powinien zaczynać się od <b>http://</b><br><br><a href="java script:history.back()"><img src=image/popraw.gif alt="wróć i popraw"></a></td></tr></table>";
$s_url = 1;
}
}
//zabezpieczenie przed enterem
if (($wpis!="") && (empty($s_gg)) && (empty($s_icq)) && (empty($s_ma)) && (empty($s_url))){
if (eregi("rnrnrnrn", $wpis)) {
echo "<table border=0 cellpadding=0 cellspacing=0 align=center><tr><td class=ramka><img src=image/stop.gif align=middle> <font face=tahoma color=#FF0000><b>Blokada antylamerska !!!</b></font></td></tr></table>";
$s_ent = 1;
}
//weryfikacja długości wyrazu
$wpis = wordwrap ($wpis, 35," ",1);
$ile = strlen($wpis);
if ($ile > 515){
echo "<table align=center><tr><td class=ramka align=center><img src=image/stop.gif align=middle> <font color=#FF0000>Przekroczono dozwoloną ilość znaków przeznaczoną na wpis!<br><br><a href="java script:history.back()"><img src=image/popraw.gif alt="wróć i popraw"></a></td></tr></table>";
$s_len = 1;
}
?>

<?
if ((empty($s_gg)) && (empty($s_icq)) && (empty($s_ma)) && (empty($s_url)) && (empty($s_ent)) && (empty($s_len))){
$e_mail = htmlspecialchars($e_mail);
$skad = htmlspecialchars($skad);
$gg = htmlspecialchars($gg);
$icq = htmlspecialchars($icq);
$strona = htmlspecialchars($strona);
$nick = str_replace(" "," ",$nick);
$nick = str_replace("|","",$nick);
$nick = str_replace("</","",$nick);
$nick = str_replace("<","",$nick);
$nick = str_replace(">","",$nick);
$tlen = str_replace(" "," ",$tlen);
$tlen = str_replace("|","",$tlen);
$tlen = str_replace("</","",$tlen);
$tlen = str_replace("<","",$tlen);
$tlen = str_replace(">","",$tlen);
$wpis = str_replace(" "," ",$wpis);
$wpis = str_replace("|","",$wpis);
$wpis = str_replace("</","",$wpis);
$wpis = str_replace("<","",$wpis);
$wpis = str_replace(">","",$wpis);
//dodatkowe efekty
//pogrubienie
$wpis = str_replace("","<b>",$wpis);
$wpis = str_replace("
","</b>",$wpis);
//podkreślenie
$wpis = str_replace("","<u>",$wpis);
$wpis = str_replace("
","</u>",$wpis);
//kursywa
$wpis = str_replace("","<i>",$wpis);
$wpis = str_replace("
","</i>",$wpis);
//buzki
$plik = "image/emotikony/em.szk";
$file = file($plik);
for ($i=0;$i<count($file);$i++){
$a = split("|", chop($file[$i]));
$sp = explode("||", $file[$i]);
$wpis = str_replace("$sp[1]","<img src=image/emotikony/$sp[0]>",$wpis);
}
$data = date("Y-m-d H:i:s");
$ip=$REMOTE_ADDR;
$host=gethostbyaddr($ip);
$wpis = str_replace("rn","<br>",$wpis);
$wpis = str_replace("n"," ",$wpis);
//funkcja "cenzora" napsana przez Łukasza Budnika
include "includy/cenzor.inc";
$wpis = cenzor($wpis,3);
$nick = cenzor($nick,3);
$skad = cenzor($skad,3);
$e_mail = cenzor($e_mail,3);
$tlen = cenzor($tlen,3);
$strona = cenzor($strona,3);
//koniec cenzora
$dane = "$nick||$e_mail||$gg||$tlen||$icq||$strona||$wpis||$data||$ip||$host||$plec||$ska
||n";
$dane = str_replace(" ","_",$dane);
$dane = strtr(StripSlashes($dane), "ąśźĄŚŹ", "ąśźĄŚŹ");
$file = "$katalog/$wpisy$rozsz";
$fp = fopen("$file", "r+");
$dane=$dane.fread($fp, filesize($file));
rewind($fp);
flock($fp, 2);
fwrite($fp, $dane);
flock($fp, 3);
fclose($fp);
//mail do wpisujacego
$wysylka = "Dziękuję za wpis do mojej Księgi gości!nZapraszam ponownie!nn$s_adres";
$header = "From: Księga gości <$tw_email>";
mail($e_mail,"Dzieki za wpis!","$wysylka","$header");
//mail do admina
$wysylka1 = "Dokonano wpisu do Księgi gościnKto?: $nicknEmail: $e_mailnIP: $ipnHost: $hostnData: $data";
$header1 = "From: $nick <$e_mail>";
mail($tw_email,"Wpis do Ksiegi gosci","$wysylka1","$header1");
//komunikat
$nick = strtr(StripSlashes($nick), "ąśźĄŚŹ", "ąśźĄŚŹ");
echo "<table border=0 cellspacing=0 cellpadding=0 align=center width=500><tr><td class=ramka align=center><img src=image/info.gif align=middle> <b>$nick</b> dziękuję za wpis do Księgi gości</td></tr></table>";
}
}
?>
<?= $powered;?>
</body>
</html>
?>[/php:1:6bfe7b6a56]
To jest plik zapisz.php odpowiedzialny za zapisanie wpisów.
frogger14
A mozesz podac linka do tej ksiegi gosci ?
Denver
Blad jest w tym miejscu:

[php:1:9255289a39]<?
// (...)

if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");

// (...)
?>[/php:1:9255289a39]

w skrypcie jest dodaj.php, a na stronie zapisz.php... postaraj sie to zmienic, powinno pojsc. A jak nie zadziala to sprawdz jeszcze zmienną $adr_ks.
czapar
zmieniłem w skrypcie na zapisz.php i nie działa
Denver
A sprawdzales te zmienna $adr_ks ? Co ona zawiera?
czapar
jak mam ją sprawdzić questionmark.gif
Denver
No chociazby przez
[php:1:9097f75df3]die ($adr_ks);[/php:1:9097f75df3]

na poczatku skryptu...


######## EDIT ###
Sorki za blad z tym zapisz.php... Oczywiscie skrypt jest dobry, bo jestesmy odsylani ze strony dodaj.php, a nie zapisz.php, wiec powinno zostac tak jak jest
czapar
nie rozumiem
Denver
Poszukaj w includy/config.inc i includy/top_admin.inc i tam powinna byc zdefiniowana ta zmienna... mozliwe ze jest ona zle ustawiona, musi zawierac poprawna sciezke do pliku dodaj.php
czapar
w includy/config.inc znalazłem zmienną $adr_ks wpisałem donie dodaj.php i nie działa
czapar
czy ktoś mi pomoże ?
arogancik
na początku skryptu przed [php:1:d87ef0e307]<?php
if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");
?>[/php:1:d87ef0e307]
wstaw
[php:1:d87ef0e307]<?php
echo $HTTP_REFERER;
echo "$adr_ks/dodaj.php";
?>[/php:1:d87ef0e307]
i zoabcz czy ci wyświetli to samo, jesli nie to bedziesz wiedział, ze coś jest nie tak ze zmienną $adr_ks u jakby co to przypiszesz jej juz w tym pliku odpowiednia wartośc i bedziesz miał prbolem z głowy. jest to rozwiązanie troche łopatologiczne ale zawsze skuteczne smile.gif
czapar
zrobiłem tak jak kazałeś i jest tak www.zofol.piwko.pl
czapar
pisze: /dodaj.php Brak uprawnień
arogancik
no to juz widać że $HTTP_REFERER nie zwraca ci nic. więc wystarczy jak wywalisz te 2 linijki
[php:1:284fbe4f11]<?php
if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");
?>[/php:1:284fbe4f11]
skrypt bedzie mniej bezpieczny bo bedzie mzna dodać wpisy skażdego miejsca a nie tylko z twojego formualarza, ale za to powinno działąć.
niewiem czemu nie masz wartosci w $HTTP_REFERER, bo ja robiłęm szybki test u siebie na prostym formularzi i zwracało smile.gif
czapar
wywaliłem:
[php:1:5cf18671de]<?php
if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");
?>[/php:1:5cf18671de]
i nie zapisują sie wpisy.
tara
a może to przez skrypt statystyk na piwko.pl questionmark.gif
arogancik
no to moze w tej chwili jest już to kwestia tego ze zmienne przesłane z formularza powinieneś wczytywać $_POST[zmienna] albo $_GET[zmienna]
albo daj na samym początku extract($_POST); extract($_GET);
czapar
Dodałem te zmienne i jest postęp biggrin.gif ale cos jeszcze jest nie tak. Wyskakuje taki komunikat:
Warning: gethostbyaddr(): Address is not a valid IPv4 or IPv6 address in /home/piwko/users/piwko.pl/z/zofol/zapisz.php on line 118

Warning: mail, exec, passthru, system, phpinfo, phpversion, php_logo_guid() has been disabled for security reasons in /home/piwko/users/piwko.pl/z/zofol/zapisz.php on line 144

Warning: mail, exec, passthru, system, phpinfo, phpversion, php_logo_guid() has been disabled for security reasons in /home/piwko/users/piwko.pl/z/zofol/zapisz.php on line 148 sad.gif
arogancik
jest zablokowane pare funkcji ze wzgłedu na bezpieczeńśwto. muszisz robić wysył maili w innym psosb,ale z nich zrezygnować
czapar
jakie bezpieczeństwo
czachor
na piwko.pl jest włączone safe-mode i admini wyłączyli kilka funkcji... więcej przeczytaj o nich w FAQ na http://forum.piwko.pl tam też znajdziesz skrypt wysyłający maile z ich serwera (chyba nawet też w FAQ jest)
arogancik
krótko mówiąc

czytaj fora bedziesz wielki laugh.gif
czapar
jeśli zmienie serwer który obsługuje wszystkie funkcje to nie będzie problemu questionmark.gif
czachor
jeżeli reszta skryptu już nie ma błędu, to tak smile.gif
luc
Zapomniales dodac jaka to ksiega gosci a ta ksiega to Xiega.

masz tam na poczatu
[php:1:02815d4fb3]

<?

require("includy/config.inc");
require("includy/top_admin.inc");
if ($HTTP_REFERER!="$adr_ks/dodaj.php")
die ("Brak uprawnień");

?>[/php:1:02815d4fb3]

Skasuj linie 5 i 6 i bedzie ci juz dzialac.
arogancik
luc, mam prośbe do ciebie. najpierw przeytaj rady a potem ich nie powtarzaj smile.gif
luc
Albo moj net zle zadzialal albo forum sie zacielo, chyba to pierwsze bo jak przegladalem nie bylo tego a jak napisalem to pokazalo sie to samo co ja napisalem
czapar
a ewentualnie to jaki byście mi polecili serwer questionmark.gif
czapar
nie znacie żadnego serwera questionmark.gif
arogancik
pobawie sie w moderatora smile.gif szkoszrysztaj z szukaj.
było pare razy i napewno jest jedna bardzo długa lista. trzeba sie tylko wysilić i skorzystać z przycisku szukaj smile.gif
Pejas123
mam ten sam problem
usunołem te 2 linijki ale problem jst nadal a mam na serwku lycosa:/
www.pejasite.prv.pl
Nie bardzo jestem obeznany w php wiec prosze o wyrozumiałośc:>
czapar
Ale widzę u ciebie księga gości działa. Nie mogę wejść do panelu administratora a ty możesz ?
thug
hmm mam takie pytanie
ma ktos moze kod czegos takiego jak ten licznik wpisanych znakow?
czapar
teraz wywala mi cos takiego:
Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 14

Warning: fgets(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 15

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 16

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 21

Warning: fwrite(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 22

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 23
czachor
przetłumacz i masz odpowiedź :wink: albo zapodaj kod pliku licznik.inc, bo nikt nie jest wróżką smile.gif
czapar
[php:1:04bd7f9a0a]<?php
$plik = "wpisy/licznik.szk";

if($kg!="1"){
$file=@fopen($plik, "r");
flock($file, 1);
$cyfra=fgets($file, 100);
flock($file, 3);
@fclose($file);
$cyfra++;

$file=@fopen($plik, "w");
flock($file, 2);
fwrite($file, $cyfra);
flock($file, 3);
@fclose($file);
}
else {
$file=@fopen($plik, "r");
flock($file, 1);
$cyfra=fgets($file, 100);
flock($file, 3);
@fclose($file);
}
?>

?>[/php:1:04bd7f9a0a]
czapar
ktoś może wie dlaczego wywala ten błąd questionmark.gif
Ja nie znam angielskiego. sad.gif
Joshi
Ja ściągnąłem ten sam skrypt, ale w includes nie ma pliku config.inc
Strz@łka
Cytat
teraz wywala mi cos takiego:
Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 14

Warning: fgets(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 15

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 16

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 21

Warning: fwrite(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 22

Warning: flock(): supplied argument is not a valid File-Handle resource in /home/jarek/www/includy/licznik.inc on line 23


Uprawnienia dla plików (chomod) Trzeba ustawić, albo piwko nie pozwala używać takich funkcji sad.gif ale prędzej chomody :/
czachor
chmody to raczej nie, pisałoby, że brak uprawnień... sprawdź czy masz ten plik, czy dobrze podajesz ścieżkę... sprawdziłem u siebie na localhoście, działa bez problemu...
jak masz na piwko.pl, to poszukaj skryptu u nich na forum, w dziale FAQ mają działające u nich skrypty i dostosuj jakiś do swoich potrzeb
czapar
mam na serwerze mojego administratora sieci.
www.cablenet.prv.pl
Poza tym chmody ustawiłem smile.gif
Chewolf
Czy napewno wszystko dobrze ustawiłeś w pliku config questionmark.gif
czapar
myślę że dobrze
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.