Avatar billede butcher Nybegynder
05. maj 2004 - 08:58 Der er 4 kommentarer og
1 løsning

Server side validering

Man kan sagtens lave noget javascript validering, men da det er er client side, kan brugeren omgå det ved at slå javascript fra :)= Så derfor vil noget server side validering være at fortrække.

Jeg har noget lign med fælgende kode:

<?php
$time = date("d/m - Y");
if($_POST['nick'] == "Nick") {
$nick = "Ukendt";
} else {
$nick = &$_POST['nick'];
}
if($_POST['indhold'] == "Din besked") {
$tjek = "0";
} else {
$tjek = 1;
}
if($_POST['email'] == "Email") {
$email = "";
} else {
$email = &$_POST['email'];
}
$indhold = addslashes($_POST['indhold']);
include("config.php");
    if($tjek == 1){
        mysql_query("INSERT INTO tagwall (nick, indhold, dato, email) values ('$nick', '$indhold', '$time', '$email')");
    }

        ?>

Det jeg godt kunne tænke mig var noget hvor den ikke tog < og / med , så jeg tænkte på noget med

if($_POST['indhold'] == "Din besked") {
$tjek = "0";
}
else if $_POST['indhold'] = < & /)
{
$tjek = "0";
} else {
$tjek = 1;
}

Jeg ved godt det er forkert, men det var lige hvad jeg kunne se mig ud af :)
Avatar billede b4r0n3n Nybegynder
05. maj 2004 - 09:10 #1
if($_POST['indhold'] == "Din besked") {
$tjek = "0";
}
else if (strpos($_POST['indhold'], "<"))
{
$tjek = "0";
}
else if  (strpos($_POST['indhold'], "/"))
{
$tjek = 0;
}
else
{
$tjek = 1;
}
Avatar billede butcher Nybegynder
05. maj 2004 - 09:26 #2
Det er den ikke helt med på, min kode ser sådan her ud nu:

<?php
$time = date("d/m - Y");
if($_POST['nick'] == "Nick") {
$nick = "Ukendt";
} else {
$nick = &$_POST['nick'];
}
if($_POST['indhold'] == "Din besked") {
$tjek = "0";
}
else if (strpos($_POST['indhold'], "<"))
{
$tjek = "0";
}
else if  (strpos($_POST['indhold'], "/"))
{
$tjek = 0;
}
else
{
$tjek = 1;
}
if($_POST['email'] == "Email") {
$email = "";
} else {
$email = &$_POST['email'];
}
$indhold = addslashes($_POST['indhold']);
include("config.php");
    if($tjek == 1){
        mysql_query("INSERT INTO tagwall (nick, indhold, dato, email) values ('$nick',

'$indhold', '$time', '$email')");
    }

        ?>

Men den indsætter stadig < og / :S
Avatar billede butcher Nybegynder
05. maj 2004 - 09:28 #3
Funktionen med når der står Din besked i indholds feltet virker dog stadig fint
Avatar billede butcher Nybegynder
05. maj 2004 - 13:02 #4
<?php
$indhold = addslashes($_POST['indhold']);
$time = date("d/m - Y");
if($_POST['nick'] == "Nick") {
$nick = "Ukendt";
} else {
$nick = $_POST['nick'];
}
if($_POST['indhold'] == "Din besked") {
$tjek = "0";
}
else if (stristr($indhold,"/") || stristr($indhold,"<")) {
$tjek = "0";
}
else
{
$tjek = 1;
}
if($_POST['email'] == "Email") {
$email = "";
} else {
$email = $_POST['email'];
}
include("config.php");
    if($tjek == 1){
        mysql_query("INSERT INTO tagwall (nick, indhold, dato, email) values ('$nick',

'$indhold', '$time', '$email')");
    }

        ?>

Var tricket bag det :)

Men du var bestemt inde på noget af det rigtige :)
Avatar billede butcher Nybegynder
05. maj 2004 - 13:04 #5
Nå ja tak til hyper, ikke ham der fra eye, men ham fra cs-hosting.dk :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester