webForumDet fria alternativet

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

PHP

4 svar · 266 visningar · startad av Pontus Thor

Medlem sedan juni 2002324 inlägg
Frågan#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>
Medlem sedan aug. 20002 992 inlägg
#2

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

Medlem 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.

Medlem 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

Medlem 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!

267 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)