01. maj 2003 - 12:38Der er
12 kommentarer og 1 løsning
tjek for input med "hidden"
Jeg har set eksempler, f.eks. i "Start på PHP" s.56, hvor man tjekker om der er noget input i en form ved hjælp af et hidden input. Det nævnte eks. er:
[mysql_connect, mysql_select]
if ($skriv){ [... forskelligt bearbejdning af inputdata] mysql_query("insert into [... osv.]") }
Hvad gør det skjulte felt her? Hvordan fungerer det som tjek på at der er noget input for formen? Det drejer sig om tjek i forbindelse med input til gæstebog, forum e.l.
Det eneste dit eksempel vil gøre er at tjekke om variablen $skriv er sat, hvilket den i det her tilfælde bruger til at tjekke om der er blevet trykket på submit-knappen, så den ved om den skal skrive til databasen.
Synes godt om
Slettet bruger
01. maj 2003 - 12:42#2
Jeg kan ikke rigtigt se logikken i det... Normalt ville jeg tjekke om der er indhold input fra en formular på følgende måde... <input type="text" name="name" value=""/>
<?php // Hvis der er trykket på knappen if(isset($_POST{'send'])) { // Tjekker om navn og email er lig med noget if($_POST['navn'] != "" && $_POST['email'] != "") { // Indsætter data i databasen mysql_query("insert into [... osv.]"); } else { // Udskriver en besked hvis felterne var tomme echo "Navn og email er ikke udfyldt"; } } ?>
I dit eksempel, schaefner, vil $_POST['send'] ikke være sat hvis brugeren sender formen afsted ved at trykke retur i et felt, dvs. ikke trykke på knappen. Derfor det hidden felt (én løsning...)
jeg tjekker om der er indhold i de andre input-felter (dem som brugeren skal udfylde) med et javascript der ikke sender formen med mindre disse felter er udfyldt
<?php // Hvis der er trykket på knappen if(isset($_POST['send'])) { // Tjekker om navn og email er lig med noget if($_POST['navn'] != "" && $_POST['email'] != "") { // Indsætter data i databasen mysql_query("insert into [... osv.]"); } else { // Udskriver en besked hvis felterne var tomme echo "Navn og email er ikke udfyldt"; } } ?>
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.