Uløst validerings spørgsmål
Hej med jer,Jeg har et problem som går mig meget på, da jeg ikke kan finde ud af løse det selv, eller kan få hjælp til det.
Jeg har et system hvor man kan sende noget data til en database, hvilket jo er meget normalt. Nu vil jeg gerne have lagt noget server-site validering på, så der ikke kan sendes "ulovlige" tegn: {}[]<>. Jeg ved bare ikke hvordan denne validering skal laves, eller hvor den skal ligges. Her er min 2 sider:
Side 1 hvor data bliver tastet ind i input fields og text fields (disse er ikke med i dette eksempel!)
<body leftmargin="0" topmargin="0">
<table class="border" width="779" align="center" border="0">
<tr>
<td width="705" align="center">
<form name="data" method="POST" action="vis_data.php">
<table width="760" border="0" class="p">
<tr>
<td width="206" valign="top">Nummer</td>
<td width="200">
<input name="refnr1" type="text" size="61" maxlength="11"><br>
<input name="refnr2" type="text" size="61" maxlength="11"><br>
<input name="refnr3" type="text" size="61" maxlength="11"></td>
</tr>
<tr>
<td>
<?php
if($_POST['Submit'] == "Submit") {
if(!preg_match('/[][<>{}]/', $input)){
// ok
// send forms indhold
}else{
echo "FEJL: Der findes ulovlige tegn i teksten. Følgende tegn må ikke bruges: [ ] < > { }"
}
}
?>
</td>
</tr>
<tr>
<td><input type="submit" name="senddata" class="knap" value="Videre" style="cursor:pointer"></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</body>
</html>
Side 2 hvor data bliver udskrevet så brugeren kan se at alt data er med:
<?php
session_start();
?>
<?php
//Alle sessions bliver her reg.
if (isset($_POST["senddata"])){
session_register('refnr1');
$_SESSION['refnr1'] = $_POST["refnr1"];
$refnr1=$_SESSION['refnr1'];
session_register('refnr2');
$_SESSION['refnr2'] = $_POST["refnr2"];
$refnr2=$_SESSION['refnr2'];
session_register('refnr3');
$_SESSION['refnr3'] = $_POST["refnr3"];
$refnr3=$_SESSION['refnr3'];
}
?>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK REL=StyleSheet HREF="stylesheet.css" TYPE="text/css" MEDIA=screen>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
</head>
<body leftmargin="0" topmargin="0">
<table class="border" width="779" align="center" border="0">
<tr>
<td width="705" align="center">
<table width="760" border="0" class="p">
<tr>
<td colspan="2"><?php
//All sessions are being updated
$refnr1=$_SESSION['refnr1'];
$refnr2=$_SESSION['refnr2'];
$refnr3=$_SESSION['refnr3'];
//The data is displayed.
?>
<b>--Søg eksisterende job--</b><br>
<b><i>Jeg søger job med stillingsnr.:</i></b><br>
<?php echo $refnr1;?><br>
<?php echo $refnr2;?><br>
<?php echo $refnr3;?>
</td>
</tr>
<tr>
<td colspan="4" valign="top"></td>
</tr>
<tr>
<td colspan="2"><hr></td>
</tr>
<tr>
<td width="68"><input type="button" class="knap" OnClick="history.go(-1);" value="Ret CV" style="cursor:pointer"></td>
<td width="682" valign="top">Tryk på denne knap for at rette i dit CV</td>
</tr>
<tr>
<td><form action="indsaet.php" method="POST">
<input type="submit" class="knap" name="sendcv" value="Gem CV" style="cursor:pointer">
</form></td>
<td valign="top">Tryk på denne knap for at gemme dit CV</p>
<?php
//Checks if querystring is sent back from "indsaat_opretdata.php" to check if the data is inserted correctly into the Database
if(isset($_GET["test"])){
echo "<script>"; //Sends the user to the "opret_done page", if data has been sent to the database without errors.
echo "location.href='confirm.php'";
echo "</script>";
} else {
echo "";
}
?>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Er der ikke nogen som kan hjælpe mig, så jeg kan få lukket dette spørgsmål??
