webForumDet fria alternativet

Generera slumpad kod

PHPur PHP

5 svar · 570 visningar · startad av wasset

wassetMedlem sedan feb. 20074 inlägg
Frågan#1

Tjenare,

Skulle behöva ett script som genererar en kod som man sedan måste ange i ett text fält, i mitt kontakt formulär, vill gärna bli av med dessa envisa spammare.

Antingen så att det slumpas bilder med en kod, eller att det dyker upp en slumpad kod med vanlig text, det kvittar, bara det fungerar.

Tack på förhand. :bire

PeddaMedlem sedan juni 20006 032 inlägg
#2
// Skapa en slumpad sträng
$length = 20; // hur många tecken??
while($i < $length){
	$a = mt_rand(1, 3);
	if($a == 1) {
		$a = mt_rand(48, 57);
		$a = chr($a);
	}
	if($a == 2) {
		$a = mt_rand(65, 90);
		$a = chr($a);
	}
	if($a == 3) {
		$a = mt_rand(97, 122);
		$a = chr($a);
	}
	$ord .= $a;
	$i++;
} 

echo $ord;
wassetMedlem sedan feb. 20074 inlägg
#3

Tack Pedda, nu ska jag bara göra så att de blir tvunga att skriva rätt kod i en text ruta.. men, hur?

The_HulkMedlem sedan juni 20031 837 inlägg
#4

du får spara koden i $_SESSION när du genererar fram koden och sedan hämta kontrollera mot den när användaren skickar in formuläret.

glöm inte bort att använda

session_start();

innan du använder

$_SESSION[...]

denna koden behöver du där du genererar koden.

$_SESSION['kod'] = $ord;

denna koden använder du när du ska kontrollera det användaren har matat in.

if($_SESSION['kod'] != $_REQUEST['kod'])
{
 // fel kod.
}

du får lägga till en input-tagg med namnet "kod"

<input type="text" name="kod">
PeddaMedlem sedan juni 20006 032 inlägg
#5

phpsidan.nu finns en ganska bra guide
http://www.phpsidan.nu/res_articles.php?view=art&id=59

wassetMedlem sedan feb. 20074 inlägg
#6

Tack för all hjälp. Nu ska det fungera!

141 ms totalt · 3 externa anrop · v20260731065814-full.58439ac5
138 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)