Guestbook - problema fastidioso

moon

Nuovo Utente
25 Nov 2009
13
0
0
36
Svizzera
Salve a tutti!

Da inizio anno con l'aiuto di amici abbiamo inserito un Guestbook nel sito di una scuola. Ma da un paio di mesi capita che troviamo messaggi vuoti firmati come Anonimo.
All'inizio pensavamo che fosse qualcuno che si divertiva ma poi abbiamo visto con un nostro portatile che ogni volta che entriamo nella pagina del sito dedicata al Guestbook lascia quel messaggio automaticamente ad ogni accesso. Questo capita con + pc ma non con tutti!

Cosa può essere? Come posso risolvere?:confused:


Grazie 1000!
Moon
 
Il fatto che capiti solo con alcuni PC mi lascia seriamente perplesso. Sei proprio sicuro? A volte sembra, mentre poi in realtà accade con tutti. Comunque se mi fai vedere il codice del guestbook posso sicuramente dirti qualcosa di più ;)
 
Sicurissima, ad esempio col pc del lavoro e due altri di casa non lo fa.
Ti metto di seguito il codice che si trova nella pagina principale (gli altri file php in questo momento non ho la possibilità di prenderli)

<title>GuestBook</title>

<style>
A{
text-decoration: none;


color:#AEBEC7;
letter-spacing: 0pt;
text-transform:uppercase;
font-size: 12pt;
font-family: Tahoma;
}

A:visited{


color:#0033FF;
letter-spacing:0pt;
font-weight:bold;
text-transform:uppercase;
text-decoration: none;
}

A:active
{


height:1px;
letter-spacing: 0pt;
font-weight:bold;
text-transform:uppercase;
text-decoration: none;
}

A:hover {
cursor:hand;
text-transform:uppercase;
);
text-decoration: none;
}


TH { FONT: 7pt tahoma; COLOR: #999999;
}
TD {
FONT: 7pt tahoma; COLOR: #999999;
}
P {
FONT: 7pt tahoma; COLOR: #999999;
}

B {
FONT: 7pt tahoma;font-weight: bold;

}

BODY {
FONT: 7pt tahoma; COLOR: #999999;
}

.header {font: 8pt tahoma ; color: #808080; font-weight: bold; border-bottom: double 3px #808080;background:#D7D3C9; text-transform:uppercase;
}



BODY {
scrollbar-face-color: #D7D3C9;
scrollbar-highlight-color: #FFFFFF;
scrollbar-3dlight-color: #DBDBDB;
scrollbar-shadow-color: #808080;
scrollbar-darkshadow-color: #999999;
scrollbar-track-color: #FFFFFF;
scrollbar-arrow-color: #999999;
background-color: #0099CC;
}
.style10 {color: #6666FF; font-size: 12pt; font-style: italic; }
a:link {
color: #0033FF;
text-decoration: none;
}
body,td,th {
font-size: 12pt;
color: #000099;
}
#Layer1 {
position:absolute;
left:427px;
top:40px;
width:198px;
height:67px;
z-index:1;
}
.style24 {font-size: 14px; font-family: Tahoma; color: #000099;}
.style27 {color: #000099; font-size: 16pt; }
.style29 {font-size: 12px; font-family: Tahoma; color: #000099; }
#Layer2 {
position:absolute;
left:675px;
top:148px;
width:199px;
height:41px;
z-index:2;
}
#Layer3 {
position:absolute;
left:227px;
top:11px;
width:188px;
height:40px;
z-index:3;
}
.style42 {font-size: 12px}
.style44 {font-size: 12px; font-family: Tahoma; color: #0033FF; }
.style46 {color: #000099; font-size: 16pt; font-weight: bold; }
.style47 {
font-size: 12pt;
color: #6666FF;
font-family: Tahoma;
}
.style48 {color: #0033FF; font-size: 12px;}
.style50 {
font-size: 24px;
font-family: Verdana;
color: #000099;
font-weight: bold;
}
.style51 {color: #6666FF; font-family: Georgia; font-size: 16pt;}
.style54 {color: #000099}
</style>
</head>

<body background="">
<div align="center">

<table width="961" border="1" bordercolor="#000099" bgcolor="#FFFFFF" id="table1" style="border: 1px solid #C4C4C3; ">
<tr>
<td colspan="2">
<p align="center"><img border="0" src="Titolo.jpg" width="728" height="207" /></td>
</tr>
<tr>
<th width="26%" valign="top">
<table width="217" height="398" border="0" id="table1">
<tr>

<th width="211" style="text-align: center"><table width="155" height="35" border="0" bordercolor="#000099">
<tr>
<th height="27" class="style24" scope="row"><div align="left"><a href="index.html">Home</a></div></th>
</tr>
</table>
<table width="155" height="92" border="0" bordercolor="#000099">
<tr>
<th width="125" height="84" scope="row"><p align="left" class="style10"><span class="style46">La Scuola</span> </p>

<p align="left" class="style29"><a href="Scuola.html" class="style44">Presentazione</a><cite><samp><code><br />
</code></samp></cite><br />
<a href="Sede.html" class="style42">Sede</a><br />
<br />
<span class="style42"><a href="Eventi.html" class="style42">Eventi</a> <br />
<br />
<a href="Photo.html" class="style42">Photo gallery </a><br />

<br />
<a href="Contatto.html" class="style42">Contatto<br />
<br />
</a></span><a href="guestbook.php"><span class="style42">GuestBook</span><br />
<br />
</a></p> </th>
</tr>

</table>
<table width="155" height="92" border="0" bordercolor="#000099">
<tr>
<th width="136" height="29" scope="row"><p align="left" class="style10"><span class="style46">I Corsi </span> </p>
<p align="left" class="style29"><a href="Corsi-presentazione.html" class="style42">Presentazione</a><br />
<br />
<a href="Corsi.html" class="style42">Corsi</a><br />

<br />
<a href="Docenti.html" class="style42">Docenti</a><br />
<br />
</p> </th>
</tr>
</table>
<table width="155" height="92" border="0" bordercolor="#000099">
<tr>

<th height="24" class="style47" scope="row"><div align="left"><span class="style27"><strong><em>L'Iscrizione</em></strong>
</p>

</span>
</div>
<p align="left" class="style42"><a href="Lezione prova.html" class="style42">Lezione prova</a><br />
<br />
<a href="Vantaggi.html" class="style42">VANTAGGi</a><br />
<br />

<a href="Tariffe.html" class="style42">Tariffe </a><br />
<span class="style42"><br />
<a href="Pagamento.html" class="style48">Modalit&Agrave; di pagamento</a></span><br />
<br />
</th>
</tr>
</table> </th>

</tr>
</table></th>
<td width="69%" valign="top">
<table border="0" id="table10" width="396">
<tr></tr>
</table>
<div align="center" class="style51">
<blockquote class="style24">
<p align="left" class="style50">Guestbook SAM<br />
</p> <p align="left" class="style50">
Pagine: &laquo; 1 <a href="?page=2">2</a> <a href="?page=2">&raquo;</a> <br />

<br />
</p>
<hr /><br />

<strong>November 20, 2009 at 02:41:49pm</strong><em></em><br />Mel, <br />Un caro saluto dal lavoro :-D<br /><br />
<strong>October 19, 2009 at 09:23:51pm</strong><em></em><br />Mela, <br />Ehi raga dobbiamo metterci d'accordo per il torneo Wii!! Venerdì vi propongo qualche data!<br /><br />
<strong>October 17, 2009 at 03:51:28pm</strong><em></em><br />Simo il Beniamino, <br />Oggi alla SAM ci sono le porte aperte,
speriamo che la gente non stia sotto le coperte...

<br /><br />
<strong>September 30, 2009 at 02:12:46pm</strong><em></em><br />Melania, <br />Complimenti a tutti, siamo stati davvero bravi! <img alt=":)" src="smileys/smile.gif" style="vertical-align: middle" title=":)" /> Ci vediamo lunedì!<br /><br />
<strong>September 25, 2009 at 07:39:33pm</strong><em></em><br />Magali, <br />Ragazzi pronti per domenica? Saremo mitici! Non dimenticate di spargere la voce mi raccomando! <img alt=";)" src="smileys/wink.gif" style="vertical-align: middle" title=";)" /><br /><br />

<hr />

<h3 class="style54">Firma Guestbook</h3>
<form action="sign.php" method="post">

<table width="605" height="408" border="2" cellpadding="15" cellspacing="10">
<tr>
<td width="300" valign="top">
<strong>Nome</strong>:<br />
<input maxlength="35" name="name" size="50" type="text" /><br /><br />
<br />
<strong>Messaggio</strong>:<br />

<textarea cols="37" name="message" rows="5"></textarea> </td>

<td width="168" valign="top">

<div align="left">
<input name="ve6riZfi4caYti2onXco0de1" type="hidden" value="5288" />
<strong> Codice di verifica </strong>:<br />
(Anti spam)<br />

</div>
<br />
<pre>5288</pre>
<strong>Ripetere Code</strong>:<br />
<input maxlength="4" name="ve6riZfi4caYti2onXco0de2" size="4" type="text" /><br /><br />
<input type="submit" value="Firma Guestbook" /><br /><br />
<hr /></td>

</tr>
</table>
</form> </p>
</blockquote>
</div></td>
</tr>
<tr>
<td height="49" colspan="2">
<table border="0" width="100%" id="table8" style="border-collapse: collapse" bordercolor="#DDA68F">
<tr>
<td height="26">
<p align="center">Copyright &copy; 2008 - SAM </p>

<p align="center"><STRONG>design by WebMel</STRONG></td>
</tr>
</table></td>
</tr>
</table>
</div>

</body>

</html>
 
ciao
posso dire la mia ca....a quotidiana?
che non sia un problema di doppio submit?
mi sono accorto che il mio mouse un po' usurato (prima di cambiarlo) inviava un doppio click
questa potrebbe essere una spiegazione perchè con alcuni pc si ed altri no
 
ciao
posso dire la mia ca....a quotidiana?
che non sia un problema di doppio submit?
mi sono accorto che il mio mouse un po' usurato (prima di cambiarlo) inviava un doppio click
questa potrebbe essere una spiegazione perchè con alcuni pc si ed altri no


Solamente che per inviare il messaggio la gente deve inserire dentro un codice, quindi questa possibilità la escluderei no?


Appena posso accedere nella sorgente dei codici php li inserisco
 
ciao
Solamente che per inviare il messaggio la gente deve inserire dentro un codice, quindi questa possibilità la escluderei no?
non sarei tanto sicuro prima di escluderla, se no perche sono stati fatti degli script in js per impedirlo?
 
ciao
Chi non li sa scrivere usa il metodo via Javascript, semplice
non è proprio così, per distorcere le lettere/numeri ci voliono le librerie gd. per es. su aruba piatt. windows le librerie gd non sono attivate quindi CAPTCHA... nisba
 
pages.php

PHP:
<?
	/*
	Silentum Guestbook v1.2.1
	Modified October 29, 2007
	pages.php copyright 2006, 2007 "HyperSilence"
	*/

	$guestbook_file = "guestbook.txt";
	$lines = file($guestbook_file);
	$total_entries = count($lines);

	if(!$_SERVER["QUERY_STRING"]) {
	$page = 1;
	}
	else {
	$page = $_GET["page"];
	}

	$sum = $total_entries / 5;
	$floor = floor($sum);
	if($sum == $floor) {
	$pagenumber = $floor;
	}
	else {
	$pagenumber = $floor + 1;
	}

	if($page > 1) {
	echo "<a href=\"".$PHP_SELF."?page=".($page - 1)."\">&laquo;</a> ";
	}
	else {
	echo "&laquo; ";
	}
	for($i = 1; $i <= $pagenumber; $i++) {
	if($i == $page) {
	echo $i." ";
	}
	else {
	echo "<a href=\"".$PHP_SELF."?page=".$i."\">".$i."</a> ";
	}
	}
	if($page < $pagenumber) {
	echo "<a href=\"".$PHP_SELF."?page=".($page + 1)."\">&raquo;</a> ";
	}
	else {
	echo " &raquo;";
	}
?>














view.php

PHP:
<?
	/*
	Silentum Guestbook v1.2.1
	Modified October 29, 2007
	view.php copyright 2006, 2007 "HyperSilence"
	*/

	$guestbook_file = "guestbook.txt";
	$lines = file($guestbook_file);
	$total_entries = count($lines);

	if(!$_SERVER["QUERY_STRING"]) {
	$page = 1;
	}
	else {
	$page = $_GET["page"];
	}
	$minimum = 5 * ($page - 1);
	$maximum = 5 * $page - 1;

	foreach($lines as $line_number => $line) {
	if($line_number < $minimum) {}
	elseif($line_number > $maximum) {
	break;
	}
	else {
	$entrynumber = $total_entries - $line_number;
	echo $line;
	}
	}
?>
 
sign.php

PHP:
<?
	/*
	Silentum Guestbook v1.2.1
	Modified October 29, 2007
	sign.php copyright 2006, 2007 "HyperSilence"
	*/

	$date_format = "F d, Y";
	$time_format = "h:i:sa";

	$guestbook_file = "guestbook.txt";
	$guestbook_page = "guestbook.php";
	$html_allowed = "0"; // Change this to 1 if you want to allow HTML to be posted

	// What is displayed if the fields are left blank when an entry is added

	$blank_name = "Anonymous";
	$blank_message = "N/A";

	// Begin censored word filter
	// A lot of these words were acquired from bots posting spam links in my guestbook
	// Feel free to remove or add words as you wish

	$filter = array(".biz", ".info", "adipex", "adult", "affiliat", "afford", "allegra", "ambien", "apartment", "asshole", "baccarat", "beer", "bitch", "black jack", "blackjack", "blow", "bontril", "breast", "buy", "carisoprodol", "carookee", "cash", "casino", "cell", "cheap", "check", "cialis", "cigar", "claritin", "clit", "cock", "cok", "commerc", "crack", "crap", "credit", "cum", "cunt", "dating", "debt", "dexone", "dick", "diet", "dildo", "discount", "drug", "dvd", "ebay", "ephedra", "erection", "fack", "fag", "fck", "fock", "fuck", "fuk", "fvck", "gambl", "gay", "gift", "goatse", "health", "hentai", "homo", "horny", "horo scope", "horoscope", "hotbox", "hotel", "idiot", "insuran", "incest", "ipod", "jew", "join", "keno", "lesbian", "levitra", "license", "lipitor", "lottery", "master card", "mastercard", "masturbat", "medic", "member", "meridia", "money", "mortgage", "movie", "mp3", "naked", "nigg", "nokia", "nude", "offer", "onsize", "paxil", "pedo", "penis", "pharm", "phent", "phone", "pill", "play", "poker", "porn", "prescription", "prize", "product", "prozac", "ps2", "ps3", "psp", "purchase", "pussy", "requip", "reward", "ring tone", "ringtone", "roul", "screen saver", "screensaver", "serial", "sex", "shat", "shit", "shop", "slot", "soft ware", "software", "soma", "sponsor", "sprint", "suck", "ticket", "tourna", "tramadol", "travel", "tubgirl", "ultram", "url=", "vagina", "valium", "verizon", "vernulsa", "viagra", "visa", "voyeur", "wall paper", "wallpaper", "web cam", "webcam", "weight", "whore", "xanax", "xbox", "xxx", "zoloft", "zyrtec");

	// End censored word filter

	// Begin functions

	function remove_tags($source) {
	$source = strip_tags($source);
	return preg_replace('/<(.*?)>/ie', "'<'.'\\1'.'>'", $source);
	}

	function word_wrap($message) {
	$cut = " ";
	$max_length = 60;
	$result = "";
	$word_length = 0;

	// End functions

    $length = strlen($message);

	$tag = FALSE;
	for($i = 0; $i < $length; $i++) {
	$character = substr($message, $i, 1);
	if($character == "<") {
	$tag = TRUE;
	}
	elseif($character == ">") {
	$tag = FALSE;
	}
	elseif(!$tag && $character == " ") {
	$word_length = 0;
	}
	elseif(!$tag) {
	$word_length++;
	}
	if(!$tag && !($word_length%$max_length)) {
	$character .= $cut;
	}
	$result .= $character;
	}
	return $result;
	}

	// Begin field manipulation

	$layout = "!date! at !time!<br />
<em></em><br />
!name!, <br />
!message!<br /><br />";

	$_POST["message"] = str_replace("
", "<br />", $_POST["message"]);
	$message = word_wrap(remove_tags($message));
	$message = stripslashes($_POST["message"]);
	$message = str_replace(array("&", "\r\n\r\n"), array("&amp;", " "), $message);
	$message = str_replace(array("&amp;gt;", "&amp;lt;", "\r\n"), array("&gt;", "&lt;", "<br />"), $message);

	if($html_allowed == "0") {
	$message = str_replace(array("<", ">"), array("&lt;", "&gt;"), $message);
	$message = strip_tags(stripslashes($_POST["message"]));
	}

	$name = strip_tags(stripslashes($_POST["name"]));
	$email = urlencode(strip_tags(stripslashes($_POST["email"])));
	$uri = urlencode(strip_tags(stripslashes($_POST["uri"])));
	$uri = str_replace(array("%2F", "%3A"), array("/", ":"), $uri);
	
	$ip = explode(".", $_SERVER["REMOTE_ADDR"]);
	$display_ip = $ip[0].".".$ip[1];

	if(trim($name) == "") $name = $blank_name;
	if(trim($email) == "") $email = $blank_email;
	if(trim($uri) == "") $uri = $blank_uri;
	if(stristr($uri, "http://") === false) $uri = "http://".$uri;
	if(trim($message) == "") $message = $blank_message;

	$transition = $layout;
	$variables = array("\n", "!name!", "!email!", "!uri!", "!message!", "!date!", "!time!");
	$input = array("", $name, $email, $uri, $message, date($date_format), date($time_format), $display_ip);

	$input = str_replace(":)", "<img alt=\":)\" src=\"smileys/smile.gif\" style=\"vertical-align: middle\" title=\":)\" />", $input);
	$input = str_replace(":(", "<img alt=\":(\" src=\"smileys/frown.gif\" style=\"vertical-align: middle\" title=\":(\" />", $input);
	$input = str_replace(";)", "<img alt=\";)\" src=\"smileys/wink.gif\" style=\"vertical-align: middle\" title=\";)\" />", $input);
	$input = str_replace(":D", "<img alt=\":D\" src=\"smileys/happy.gif\" style=\"vertical-align: middle\" title=\":D\" />", $input);
	$input = str_replace(":P", "<img alt=\":P\" src=\"smileys/tongue.gif\" style=\"vertical-align: middle\" title=\":P\" />", $input);

	if(strlen($message) >= 260) {
	header("Location: ".$guestbook_page."?page=1&message=1&l=".strlen($message));
	exit;
	}

	if(strlen($name) >= 36 || strlen($email) >= 126 || strlen($uri) >= 126) {
	header("Location: ".$guestbook_page."?page=1");
	exit;
	}

	if($_POST["ve6riZfi4caYti2onXco0de1"] != $_POST["ve6riZfi4caYti2onXco0de2"]) {
	header("Location: ".$guestbook_page."?page=1&message=3");
	exit;
	}

	if($_COOKIE["signed"] == "true") {
	header("Location: ".$guestbook_page."?page=1&message=4");
	exit;
	}

	// End field manipulation

	$transition = str_replace($variables, $input, $transition);

	$past_entries = fopen($guestbook_file, "r");
	$content = fread($past_entries, filesize($guestbook_file));
	fclose($past_entries);

	$new_entry = $transition."\n".$content;

	foreach($filter as $censored_word) {
	if(stristr($new_entry, $censored_word)) {
	header("Location: ".$guestbook_page."?page=1&message=2&cw=".$censored_word);
	exit;
	}
	}

	$all_entries = fopen($guestbook_file, "w");
	fwrite($all_entries, $new_entry);
	fclose($all_entries);

	setcookie("signed", "true", time()+2419200);

	header("Location: ".$guestbook_page."?page=1&message=5");
?>
 
ciao
intanto prova (sarò fissato col doppio submit) a modificare la pagina del form secondo le seguenti indicazioni

HTML:
<!-- tutto quello che ci vuole -->
<script language="Javascript" type="text/javascript">
<!--
function Invia()
{
    var nome = document.guest.nome.value;
	var message = document.guest.message.value;
	var code = document.guest.ve6riZfi4caYti2onXco0de2.value;
	
    if (testo == "" || message == "" || code == "")
    {
        alert("TUTTI i campi sono obbligatori!");
    }
    else
    {
        document.modulo.bottone.value = "Invio in corso...";
        document.modulo.bottone.disabled = true;
        window.setTimeout("Esegui()", 5000);
    }
}
function Esegui()
{
    document.modulo.method = "post";
    document.modulo.action = "sign.php";
    document.modulo.submit();
}


-->
</script>
</head>
<body>
<!-- Tutto quello sopra  -->
<h3 class="style54">Firma Guestbook</h3>
<form name="guest">

<table width="605" height="408" border="2" cellpadding="15" cellspacing="10">
<tr>
<td width="300" valign="top">
<strong>Nome</strong>:<br />
<input maxlength="35" name="name" size="50" type="text" /><br /><br />
<br />
<strong>Messaggio</strong>:<br />

<textarea cols="37" name="message" rows="5"></textarea> </td>

<td width="168" valign="top">

<div align="left">
<input name="ve6riZfi4caYti2onXco0de1" type="hidden" value="5288" />
<strong> Codice di verifica </strong>:<br />
(Anti spam)<br />

</div>
<br />
<pre>5288</pre>
<strong>Ripetere Code</strong>:<br />
<input maxlength="4" name="ve6riZfi4caYti2onXco0de2" size="4" type="text" /><br /><br />
<input type="submit" value="Firma Guestbook" /><br /><br />
<hr /></td>

</tr>
</table>
</form>
<!-- ECCETERA.......................... -->
</body>
</html>

guarda che ho messo solo quello che può interesarti
 

Discussioni simili