Gå til innhold

Skjema i PHP.


Anbefalte innlegg

Hei!

Sjekk koden nedenfor:

 

<html>

<head>

<title>Testing</title>

</head>

<body>

<h2>Testing av metoden "post"</h2>

<table border="1">

<?

foreach ($HTTP_POST_VARS as $indeks => $verdi) {

print ("<tr>");

print ("<td>$indeks</td>");

print ("<td>$verdi</td>");

print ("</td>");

}

?>

</table>

<form method="post" action="Testing_Skjema.php">

Ditt navn: <input name="Navn">

(dette feltet har navnet Navn)<br>

Alder: <input name="Alder">

(dette feltet har navnet Alder)<br>

<input type="submit" value="send">

</form>

</body>

</html>

 

Jeg prøver å lage slik at begge felter må fylles ut før brukeren kan sende.

Hvis bruker bare fyller ut Ditt Navn feltet så kommer meldingen: "Hei, navn. Du må fylle ut alderen."....Må jeg bruke if/else for å få en slik funksjon?

Lenke til kommentar
Videoannonse
Annonse
php kan ikke hindre deg i å sende et skjema, da må du bruke javascript.

 

Tull.

 

Ta en "if (!$Alder) print "Hei navn, du må fylle ut alderen din...". Dette er seff bare en veeeldig basic måte, du må nok bygge på litt selv. Men dette er hvordan det gjøres. Etter at brukeren har trykket Submit, vil han bli sendt tilbake til skjemaet, med rød tekst på toppen om at alderen ikke er fyllt inn.

 

Derimot, hvis du ikke vil at han skal kunne trykke Submit uten å ha fyllt inn alle, må du bruke Javascript. Men det fungerer veldig dårlig. I blant annet Opera er det bare 2 tastetrykk for å skru av JavaScript, og da får du folk som greier å registrere seg allikevel. Serverside, altså PHP, på denne måten, er vel den beste metoden...

Lenke til kommentar
  • 2 uker senere...

du kan imidlertid ikke basere php sikkerhet på javascript, i og med at det er klient side stuff.

 

men det er et lurt tilleggs verktøy fordi du sparer server og linje som beskrevet.

 

jeg ville laget både en php og javascript sjekk.

 

php er allerede forklart, javascript kan gjøred med:

<form onsubmit="return check_form()" method=post name=my_form>

[...]

</form>

deretter

<script language=javascript>

function check_form{

if(!document.my_form.Alder.value || !document.my_form.Navn.value){

alert("Vennligst fyll ut feltene");

return false;

}

return true;

}

</script>

Lenke til kommentar

Her har du en primitiv løsning... funker iallfall:

 




<html> 

<head> 

<title>Testing</title> 

</head> 

<body> 

<h2>Testing av metoden "post"</h2> 

<table border="1"> 



</table> 

<form method="POST" action="<?php $_SERVER['PHP_SELF'] ?>"> 

Ditt navn: <input name="Navn"> 

(dette feltet har navnet Navn)<br> 

Alder: <input name="Alder"> 

(dette feltet har navnet Alder)<br> 

<input type="submit" value="send" name="knapp"> 



<?



if (isset($_POST["knapp"]))

{

if(!$_POST["Navn"])

{

 echo ("Du glemte å skrive inn navn!");

}

elseif(!$_POST['Alder'])

{	

 echo ("Du glemte å skrive inn alder!");

}else

{

 echo("<br>Hurra, du klarte det");

}

}

?>



</form> 

</body> 

</html> 

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...