webForumDet fria alternativet

Validera input

2 svar · 384 visningar · startad av RichardP

RichardPMedlem sedan apr. 200542 inlägg
#1

Hur validerar och formaterar jag det som skrivits i formuläret innan det lagras i databasen?
Har just nu enkel sida med ett formulär som skickar den inmatade datan till filen lagra.php som lagrar det i SQL-databasen innan man skickas tillbaka.

Regler:
[fnamn] a-z, -, mellanslag, stor bokstav i början på varje nytt ord
[enamn] a-z, -, mellanslag, stor bokstav i början på varje nytt ord
[adress] a-z, 0-9, -, mellanslag, stor bokstav, formatera "g." som "gatan" och "v." som "vägen"
[postnr] 0-9, mellanslag, lägg till mellanslag efter 3 tecken
[ort] a-z, mellanslag, stor bokstav
a-z, 0-9, -, _, ., @, små bokstäver
[tel] 0-9, ta bort mellanslag, /, \ och -
[mobil] 0-9, ta bort mellanslag, /, \ och -

Lagra.php:

<? // Lagrar den nya medlemmen i databasen
	mysql_connect("localhost", "root", "lösen");	// Anslut till MySQL
	mysql_select_db("db");	// Välj databas

	// Alla värden som matats in i formuläret läggs i variabeln $_POST, under fältnamnet
	$fnamn = $_POST['fnamn'];
	$enamn = $_POST['enamn'];
	$adress = $_POST['adress'];
	$postnr = $_POST['postnr'];
	$ort = $_POST['ort'];
	$email = $_POST['email'];
	$tel = $_POST['tel'];
	$mobil = $_POST['mobil'];
	$datum = $_POST['datum'];

	// Lagrar värdena med hjälp av SQL-kommandot INSERT INTO
	mysql_query("INSERT INTO medlemslista (fnamn, enamn, adress, postnr, ort, email, tel, mobil, datum) VALUES ('$fnamn', '$enamn', '$adress', '$postnr', '$ort', '$email', '$tel', '$mobil', '" . date("Y-m-d") . "')"); 

	// Skickar besökaren tillbaka till medlemslistan
	header("Location: index.php");
?>

Tacksam för hjälp!

GrodanBollMedlem sedan sep. 2001788 inlägg
#2

Validera server-side t.ex. http://www.phpbuilder.com/columns/weiner20050831.php3, http://pear.php.net/package/HTML_QuickForm (verkar även ta client-side).

HF =]

RichardPMedlem sedan apr. 200542 inlägg
#3

Tack för tipsen. Ska ta och läsa sidorna noggrannare. Lat som jag är löste jag första steget, att kontrollera så att fälten inte är tomma, genom client-side (JavaScript). Vet att det inte är en särskilt bra lösning men det duger till den enkla medlemslista jag skapar.

Så nu har jag den svåraste delen kvar, att formatera det som skickats innan det sparas i databasen...

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