示例#1
0
 function nyAdmin($brukernavn, $passord1, $passord2, $rotpassord)
 {
     if ($rotpassord != "superhemmeligHBHLpassord") {
         return "<p class=\"feilmelding\">Feil rotpassord.</p>";
     }
     if (!preg_match("/^[a-zæøå]{2,45}\$/i", $brukernavn)) {
         return "<p class=\"feilmelding\">Brukernavn kan kun inneholde bokstaver. Minst to og maks 45.</p>";
     }
     if ($passord1 != $passord2) {
         return "<p class=\"feilmelding\">Passordene er ikke like.</p>";
     }
     if (strlen($passord1) < 6) {
         return "<p class=\"feilmelding\">Passordet må være på minst 6 tegn.</p>";
     }
     $db = new sql();
     $brukernavn = renStreng($brukernavn, $db);
     $passord1 = renStreng($passord1, $db);
     $resultat = $db->query("SELECT * FROM webprosjekt_admin WHERE Brukernavn='{$brukernavn}'");
     if (!$resultat) {
         return "<p class=\"feilmelding\">En databasefeil oppsto ved oppretting av ny admin. (NYA01)</p>";
     }
     if ($db->affected_rows == 1) {
         return "<p class=\"feilmelding\">En administrator med dette brukernavnet finnes fra før.</p>";
     }
     $dbPassord = cryptPass($passord1, $brukernavn);
     $resultat = $db->query("INSERT INTO webprosjekt_admin (Brukernavn,Passord) VALUES('{$brukernavn}','{$dbPassord}')");
     if (!$resultat || $db->affected_rows < 1) {
         return "<p class=\"feilmelding\">En databasefeil oppsto ved oppretting av ny admin. (NYA02)</p>";
     }
     return "<p class=\"okmelding\">Administratorbrukeren ble opprettet.</p><p>Brukernavn: {$brukernavn}<br>Passord: <a onClick=\"alert('{$passord1}')\">********</a> (klikk på stjernene for å se passordet)</p>";
 }
示例#2
0
 function __construct($OrdreNr, $KNr = false)
 {
     if (!$KNr) {
         $db = new sql();
         $OrdreNr = renStreng($OrdreNr, $db);
         $resultat = $db->query("SELECT * FROM webprosjekt_ordre INNER JOIN (SELECT KNr, Fornavn, Etternavn FROM webprosjekt_kunde) AS kunde ON webprosjekt_ordre.KNr=kunde.KNr WHERE OrdreNr = '{$OrdreNr}';");
         $rader = $db->affected_rows;
         $db->close();
         if ($rader == 0) {
             die("Feil - finner ikke ordre i databasen (002)");
         }
         $resultat = $resultat->fetch_assoc();
         $this->OrdreNr = $resultat['OrdreNr'];
         $this->KNr = $resultat['KNr'];
         $this->kundenavn = $resultat['Fornavn'] . " " . $resultat['Etternavn'];
         $this->OrdreDato = $resultat['OrdreDato'];
         $this->ordrelinjer = $this->setOrdrelinjerFraDb();
         $this->fraktsum = $resultat['Frakt'];
     } else {
         $db = new sql();
         $this->KNr = renStreng($KNr, $db);
         $db->close();
         $fraktsum = 0;
     }
 }
 function leggTilVare($vnr, $antall)
 {
     $handlekurv = $this->handlekurv;
     $varenavn = $this->varenavn;
     $varepris = $this->varepris;
     $db = new sql();
     $vnr = renStreng($vnr, $db);
     $antall = renStreng($antall, $db);
     $resultat = $db->query("SELECT Varenavn,Pris FROM webprosjekt_vare WHERE VNr='{$vnr}'");
     $resultat = $resultat->fetch_assoc();
     $rows = $db->affected_rows;
     $db->close();
     if ($rows < 1) {
         return "<p class=\"feilmelding\">Fant ingen vare med varenummer {$vnr}.</p>";
     }
     if ($antall < 1) {
         return "<p class=\"advarselmelding\">Antall må være minst en.</p>";
     }
     $handlekurv[$vnr] += $antall;
     $varenavn[$vnr] = $resultat['Varenavn'];
     $varepris[$vnr] = $resultat['Pris'];
     $this->handlekurv = $handlekurv;
     $this->varenavn = $varenavn;
     $this->varepris = $varepris;
     $this->oppdater();
     return "<p class=\"okmelding\">{$antall} stk. " . $resultat['Varenavn'] . " ble lagt i handlekurven.</p>";
 }
 function __construct($fornavn, $etternavn, $adresse, $postnr, $telefonnr, $epost)
 {
     $db = new sql();
     $error['fornavn'] = $this->setFornavn(renStreng($fornavn, $db));
     $error['etternavn'] = $this->setEtternavn(renStreng($etternavn, $db));
     $error['adresse'] = $this->setAdresse(renStreng($adresse, $db));
     $error['postnr'] = $this->setPostnr(renStreng($postnr, $db), $db);
     $error['telefonnr'] = $this->setTelefonnr(renStreng($telefonnr, $db));
     $error['epost'] = $this->setEpost(renStreng($epost, $db), $db);
     $db->close();
     $this->feilmeldinger = $error;
 }
 function nyKategori($katnavn)
 {
     $db = new sql();
     $katnavn = renStreng($katnavn, $db);
     if (!preg_match("/^[a-zæøå0-9 .,:;\\-\\_\\+\\(\\)\\/\\&\\\\ ]{2,30}\$/i", $katnavn)) {
         return "<p class=\"feilmelding\">Kategorinavn kan kun inneholde bokstaver, tall, mellomrom, og (.,:;-+/\\&), og må være mellom 2-30 tegn.</p>";
     }
     $this->katnavn = $katnavn;
     $resultat = $db->query("INSERT INTO webprosjekt_kategori (Navn) VALUES('{$katnavn}')");
     if (!$resultat) {
         return "<p class=\"feilmelding\">Databasefeil ved oppretting av ny kategori (H03).</p>";
     }
     if ($db->affected_rows < 1) {
         return "<p class=\"feilmelding\">Databasefeil ved oppretting av ny kategori (H04).</p>";
     }
     $db->close();
     return "<p class=\"okmelding\">Kategorien {$katnavn} er nå opprettet.</p>";
 }
示例#6
0
 function leggTilVare($varenavn, $pris, $beskrivelse, $bilde, $katNr, $antall)
 {
     $db = new sql();
     $error['varenavn'] = $this->setVarenavn(renStreng($varenavn, $db));
     $error['pris'] = $this->setPris(renStreng($pris, $db));
     $error['beskrivelse'] = $this->setBeskrivelse(renStreng(nl2br($beskrivelse), $db, "<br>"));
     $error['bilde'] = $this->setBilde(renStreng($bilde, $db));
     $error['katnr'] = $this->setKatNr(renStreng($katNr, $db));
     $error['antall'] = $this->setAntall(renStreng($antall, $db));
     $db->close();
     return $error;
 }
示例#7
0
 function endrePassord($gammelt, $nytt1, $nytt2)
 {
     $db = new sql();
     $gammelt = renStreng($gammelt, $db);
     $nytt1 = renStreng($nytt1, $db);
     $nytt2 = renStreng($nytt2, $db);
     $db->close();
     $gammelt = cryptPass($gammelt, $this->KNr . $this->epost);
     if ($gammelt != $this->passord) {
         return "<p class=\"feilmelding\">Feil nåværende passord.</p>";
     }
     if ($nytt1 != $nytt2) {
         return "<p class=\"feilmelding\">Passordene du skrev var ikke like.</p>";
     }
     if (strlen($nytt1) < 6) {
         return "<p class=\"feilmelding\">Passordet må være minst 6 tegn.</p>";
     }
     $nytt = cryptPass($nytt1, $this->KNr . $this->epost);
     if ($gammelt == $nytt) {
         return "<p class=\"okmelding\">Passordet har blitt endret.</p>";
     }
     $db = new sql();
     $KNr = $this->KNr;
     $resultat = $db->query("UPDATE webprosjekt_kunde SET Passord='{$nytt}' WHERE KNr='{$KNr}'");
     $errno = $db->errno;
     $rows = $db->affected_rows;
     $db->close();
     if ($errno == 0 && $rows == 1) {
         $this->passord = $nytt;
         $_SESSION['kunde'] = serialize($this);
         return "<p class=\"okmelding\">Passordet har blitt endret.</p>";
     }
     if ($errno == 0 && $rows == 0) {
         return "<p class=\"feilmelding\">Vi beklager! En ukjent feil har oppstått ved endring av passord. (EP01)</p>";
     }
     if ($errno != 0) {
         return "<p class=\"feilmelding\">Vi beklager! En feil har oppstått ved endring av passord. (EP02)</p>";
     }
     return "<p class=\"feilmelding\">Vi beklager! En ukjent feil har oppstått ved endring av passord. (EP03)</p>";
 }
 function glemtPassord($epost, $postnr)
 {
     if ($epost == "" || $postnr == "") {
         return "<p class=\"feilmelding\">Fyll ut begge felt.</p>";
     } else {
         $db = new sql();
         $epost = renStreng($epost, $db);
         $postnr = renStreng($postnr, $db);
         $resultat = $db->query("SELECT KNr FROM webprosjekt_kunde WHERE Epost = '{$epost}' AND Postnr = '{$postnr}';");
         if (!$resultat) {
             return "<p class=\"feilmelding\">Feil - Kunne ikke koble til databasen (011)";
         }
         if ($db->affected_rows == 0) {
             return "<p class=\"feilmelding\">Feil kombinasjon av epost og postnummer.</p>";
         } else {
             $resultat = $resultat->fetch_assoc();
             $KNr = $resultat['KNr'];
             $passord = genPassord();
             $dbPassord = cryptPass($passord, $KNr . $epost);
             $resultat = $db->query("UPDATE webprosjekt_kunde SET Passord='{$dbPassord}' WHERE KNr='{$KNr}'");
             if ($db->affected_rows == 0) {
                 return "<p class=\"feilmelding\">Ukjent databasefeil (012)</p>";
             }
             $db->close();
             $emne = "Nytt passord i Nettbutikken";
             $tekst = "Hei\r\n\r\n" . "Du har nå blitt tildelt nytt passord i nettbutikken.\r\n\r\n" . "Her er din innloggingsinformasjon:\r\n" . "Brukernavn: {$epost} \r\n" . "Passord: {$passord} \r\n\r\n" . "For å logge inn, gå til http://nettbutikk.henrikh.net/ \r\n" . "Du kan selvsagt bytte passord når du har logget inn.\r\n\r\n" . "Hilsen,\r\nHiranBårdHenrikLars.";
             $hode = 'From: nettbutikk@henrikh.net' . "\r\n" . 'Reply-To: nettbutikk@henrikh.net' . "\r\n" . 'Content-type: text/plain; charset=iso-8859-1' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
             $resultat = @mail($epost, $emne, $tekst, $hode);
             if ($resultat) {
                 return "<p class=\"okmelding\">Du har nå fått tilsendt et nytt passord på e-post til {$epost}.</p>" . "<p>Du kan nå <a href=\"index.php?side=logginn\">logge inn</a>.</p>";
             } else {
                 return "<p class=\"okmelding\">Du har nå fått generert et nytt passord.<br>" . "Passord: {$passord} </p>" . "<p>Du kan nå <a href=\"index.php?side=logginn\">logge inn</a>.</p>";
             }
         }
     }
 }