webForumDet fria alternativet

Hjälp med "Besökarnas text" script!

PHPur PHP

4 svar · 266 visningar · startad av Pontus Thor

Pontus ThorMedlem sedan juni 2002324 inlägg
#1

Hejsan, jag har ett "besökarnas text" script med txt databas. Jag undrar helt enkelt om det finns något sätt att förhindra idioter som skriver väldigt långa "ord". Antigen vid själva inskrivningen eller en delning av ordet när det skrivs ut på sidan!
Bifogar php kod, javascript och html koden.

Testar scriptet här!

<TABLE BORDER="0" WIDTH="500" CELLPADDING="3">
<TR><TD WIDTH="200" BGCOLOR="#999999">
<? 
$fil="besokarnastext.txt";
if (isset($komm)) {
$komm=stripslashes($komm); 
$komm=htmlspecialchars($komm);
$komm=nl2br($komm);
  $fp = @fopen($fil, "w");
  @fputs($fp,$komm);
  @fclose($fp);
echo $komm;
} 
else {
@readfile($fil);
}
?>
</TD><TD WIDTH="300"> 
<form action="<?=$PHP_SELF?>" method="post"> 
Besökarnas text:<br> 
<textarea name="komm" cols="30" rows="5" wrap="virtual" onKeyUp="checkLength(this,this.form.display,40);" onKeyPress="checkLength(this,this.form.display,40);"></textarea><br><br> 
Antal tecken kvar <input type="text" name="display" size="3" value="40" disabled onFocus="this.blur();">
<input type="submit" value="Jag säger..." name="ett"><br> 
</form>

<script type="text/javascript">

function checkLength(obj,dispobj,mlength){
	if(obj.value.length>mlength){
		obj.value = obj.value.substr(0,mlength);
		alert('Detta fält maximalt innehålla '+mlength+' tecken.');
		obj.focus();
	}
	dispobj.value=mlength-obj.value.length;
}
</script>

</TD></TR>
</TABLE>
SimpaMedlem sedan aug. 20002 992 inlägg
#2

Kom precis på att mitt script inte har något sånt skydd heller :l

stevenetMedlem sedan juni 20001 251 inlägg
#3

Från manualen -> wordwrap

<?php
$text = "A very long woooooooooooord.";
$newtext = wordwrap( $text, 8, "\n", 1);
echo "$newtext\n";
?>

skriver ut
A very
long
wooooooo
ooooord.

Pontus ThorMedlem sedan juni 2002324 inlägg
#4

Simpa skrev:

Kom precis på att mitt script inte har något sånt skydd heller :l

Många sidor har inte det så om man skriver långa ord brukar hela förstasidorna bli om-möblerade! §e

Pontus ThorMedlem sedan juni 2002324 inlägg
#5

stevenet skrev:

Från manualen -> wordwrap

<?php
$text = "A very long woooooooooooord.";
$newtext = wordwrap( $text, 8, "\n", 1);
echo "$newtext\n";
?>

skriver ut
A very
long
wooooooo
ooooord.

Tackar! Ska försöka med detta!

134 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)