hej,
jag hade tänkt använda en value för att kontrollera att de fällt jag vill ha ifyllda även fylls i...
men jag har ett problem och det är att när jag sedan visar sidan med formuläret så kommer denna kod upp i rutorna...
<br /><b>Notice</b>: Undefined index: fornamn in <b>D:\wwwroot\funtrix\np\bli_medlem.php</b> on line <b>158</b><br />
kollar du källkoden till sidan så ser den ut så här:
<td><input name="fornamn" type="text" id="fornamn" value="<br />
<b>Notice</b>: Undefined index: fornamn in <b>D:\wwwroot\funtrix\np\bli_medlem.php</b> on line <b>158</b><br />
"></td>
och detta är koden för en ruta i formuläret:
<td><input name="fornamn" type="text" id="fornamn" value="<?=$back['fornamn'] ?>"></td>
har även valt att länka med hela mitt dokument om det kan vara till någon hjälp eller så att ni hittar något mer fel.
<?php
session_start(); // Alltid överst på sidan
include "conn.php"; // Databasanslutningen
if (isset($_POST['submitreg'])){
// Tag bort eventuella blanksteg i början eller slutet
foreach($_POST as $key => $val){
$_POST[$key] = trim($val);
}
//Kolla efter tomma fält
if (empty($_POST['fornamn']) ||
empty($_POST['efternamn']) ||
empty($_POST['adress']) ||
empty($_POST['postnummer']) ||
empty($_POST['ort']) ||
empty($_POST['land']) ||
empty($_POST['personnummer']) ||
empty($_POST['telefon']) ||
empty($_POST['epost']) ||
empty($_POST['pass'])) {
$reg_error[] = 0;
}
// Kolla om användarnamnet är upptaget
$sql = "SELECT COUNT(*) FROM npmedlemmar WHERE fornamn='{$_POST['fornamn']}'";
$result = mysql_query($sql);
if (mysql_result($result, 0) > 0) {
$reg_error[] = 'fornamn';
}
// Kolla om e-post kan tänkas vara ok
if (!preg_match('/^[-A-Za-z0-9_.]+[@][A-Za-z0-9_-]+([.][A-Za-z0-9_-]+)*[.][A-Za-z]{2,8}$/', $_POST['email'])) {
$reg_error[] = 'epost';
}
// kolla så att det är ett giltigt personnr.
function checkPnr($pnr)
{
if (strlen($pnr) != 10) die("Felaktigt angivet personnummer! Ange personnummret utan bindestreck, totalt 10 siffror.");
$n = 2;
// Räkna fram kontrollsumman
for ($i=0; $i<9; $i++)
{
$tmp = $pnr[$i] * $n;
($tmp > 9) ? $sum += 1 + ($tmp % 10) : $sum += $tmp;
($n == 2) ? $n = 1 : $n = 2;
}
// Lägg till sista siffran (kontrollsiffran), resultatet skall bli jämt tiotal, returnera true/false
return !( ($sum + $pnr[9]) % 10);
}
if (checkPnr($_POST['personnummer'])){
$reg_error[] = 'personnummer';
}
// Inga fel? Spara och logga in samt skicka till välkomstsida
if (!isset($reg_error)) {
$sql = "INSERT INTO npmedlemmar(fornamn, efternamn, adress, postnummer, ort, land, personnummer, telefon, epost, pass)
VALUES('{$_POST['fornamn']}', '{$_POST['efternamn']}', '{$_POST['adress']}', '{$_POST['postnummer']}', '{$_POST['ort']}', '{$_POST['land']}', '{$_POST['personnummer']}', '{$_POST['telefon']}', '{$_POST['epost']}', '{$_POST['pass']}')";
mysql_query($sql);
$_SESSION['sess_id'] = mysql_insert_id();
$_SESSION['sess_user'] = $_POST['epost'];
header("Location: valkommen.php");
exit;
}
} else {
// Sätt variabler för tomt formulär
for ($i=0; $i<10; $i++) {
$back[$i] = "";
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.style2 {font-size: 18px}
-->
</style>
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="28%"> </td>
<td width="72%"><span class="style2">NP<br>
</span></td>
</tr>
<tr>
<td valign="top"><a href="index.php">Logga in</a><br>
<a href="bli_medlem.php">Bli medlem</a></td>
<td><em><font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<?php
if (isset($reg_error)){
// Felmeddelanden
$error_list['fornamn'] = "Ditt förnamn är ej ifyllt";
$error_list['efternamn'] = "Ditt efternamn är ej ifyllt";
$error_list['adress'] = "Din adress är ej ifylld";
$error_list['postnummer'] = "Ditt postnummer är ej ifyllt";
$error_list['ort'] = "Din ort är ej ifylld";
$error_list['land'] = "Ditt land är ej ifyllt";
$error_list['personnummer'] = "Ditt personnummer är ej korrekt ifyllt";
$error_list['telefonnummer'] = "Ditt telefonnummer är ej ifyllt";
$error_list['epost'] = "Din epost är ej korrekt ifylld";
$error_list['losen'] = "Ditt lösenord är ej ifyllt";
echo "Något gick fel:<br>\n";
echo "<ul>\n";
/* lista: arrayen $reg_error och skriv ut felmeddelanden */
for ($i=0; $i<sizeof($reg_error); $i++)
{
if (isset($error_list[$reg_error[$i]]) && !empty($error_list[$reg_error[$i]])) {
echo ('<li>'.$error_list[$reg_error[$i]].'</li>');
}
}
echo "</ul>\n";
// Sätter returvariabler till formuläret
$back['fornamn'] = $_POST['fornamn'];
$back['efternamn'] = $_POST['efternamn'];
$back['adress'] = $_POST['adress'];
$back['postnummer'] = $_POST['postnummer'];
$back['ort'] = $_POST['ort'];
$back['land'] = $_POST['land'];
$back['personnummer'] = $_POST['personnummer'];
$back['telefon'] = $_POST['telefon'];
$back['epost'] = $_POST['epost'];
$back['losen'] = $_POST['losen'];
}
?>
</font></em><br> <form action="bli_medlem.php" method="post" name="" id="">
<table width="476" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Förnamn: * </td>
</tr>
<tr>
<td><input name="fornamn" type="text" id="fornamn" value="<?=$back['fornamn'] ?>"></td>
</tr>
<tr>
<td>Efternamn: *</td>
</tr>
<tr>
<td><input name="efternamn" type="text" id="efternamn" value="<?=$back['efternamn'] ?>"></td>
</tr>
<tr>
<td>Adress: * </td>
</tr>
<tr>
<td><input name="adress" type="text" id="adress" value="<?=$back['adress'] ?>"></td>
</tr>
<tr>
<td>Postnummer: * </td>
</tr>
<tr>
<td><input name="postnummer" type="text" id="postnummer" value="<?=$back['postnummer'] ?>"></td>
</tr>
<tr>
<td>Ort: * </td>
</tr>
<tr>
<td><input name="ort" type="text" id="ort" value="<?=$back['ort'] ?>"></td>
</tr>
<tr>
<td>Land: * </td>
</tr>
<tr>
<td><input name="land" type="text" id="land" value="<?=$back['land'] ?>"></td>
</tr>
<tr>
<td>Personnr: * (inklusive fyra sista siffrorna, t.ex. 6307158431)</td>
</tr>
<tr>
<td><input name="personnummer" type="text" id="personnummer" value="<?=$back['personnummer'] ?>"></td>
</tr>
<tr>
<td>Telefon: * </td>
</tr>
<tr>
<td><input name="telefon" type="text" id="telefon" value="<?=$back['telefonnummer'] ?>"></td>
</tr>
<tr>
<td>Epost (används även som användarnamn): * </td>
</tr>
<tr>
<td><input name="epost" type="text" id="epost" value="<?=$back['epost'] ?>"></td>
</tr>
<tr>
<td>Lösenord:</td>
</tr>
<tr>
<td><input name="losen" type="password" id="losen" value="<?=$back['losen'] ?>"></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><input name="Submitreg" type="submit" id="Submitreg" value="Bli medlem">
<input type="reset" name="Submit2" value="Töm formuläret"></td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>