Ik zoek een goeie form validatie. Het mooiste vind ik dat als je op submit klikt, maar een bepaald input niet is ingevuld, het kopje dan dikgedrukt rood wordt.
In principe heb ik alleen maar inputs en 1 keer een select. Die select hoeft nou ook niet perse gecheckt worden, ik weet dat dat lastig is (zou mooi zijn).
Maar heeft iemand of weet iemand nog een goed script? Ik heb al gezocht hier @ PHPhulp, maar kan niet iets vinden wat er op lijkt. Weet iemand anders een website waar ik 't kan 'rippen'?
je kon hier niets vinden? ik zit vrijwel nooit in de scripts database, maar lijkt mij dat er toch wel wat te vinden moet zijn.
je kunt gewoon met een if statement checken of een bepaald veld leeg is.
<?php
if (empty($_POST['veld']))
{
echo('U heeft veld .... niet ingevuld!');
}
else
{
//uitvoeren van actie als alles ingevuld is
}
?>
eventueel kun je het ook met javascript doen, dat is in principe mooier aangezien je inhoud niet gewist zal worden, maar het is ook weer zo dat sommige mensen dit uit hebben staan en zodoende dit dus ook niet zal werken.
En dan zet iemand de JS uit en heb je geen validatie meer... JS is een leuk extraatje voor de bezoeker, maar volkomen onbetrouwbaar. Jij, als eigenaar van de site, hebt er in elk geval helemaal niets aan. Je zult altijd met PHP de boel (nogmaals) moeten controleren.
Ik zou alles dan controleren op die nieuwe pagina. En als er dan iets van de ingevulde waarden niet klopt, de gebruiker terugsturen. Kortom, het stukje php code van Jan gebruiken op die andere pagina...
Stel je hebt een pagina form.php waarop het formulier staan. De action van dat formulier verwijst naar content_beheerovereenkomst.php. Alle input van dat formulier wordt dus gepost naar die pagina.
Op die pagina kun je dan controleren of alle gegevens ingevuld zijn. Zo ja, dan verwerk je het formulier verder. Zo niet, dan geef je een foutmelding en laat je de bezoeker terugkeren naar de vorige pagina (form.php).
Echter de manier van Jan, waarbij alles in 1 pagina staat, is een stuk makkelijker. Je kunt errors meteen op dezelfde pagina weergeven, je kunt zoals in het script van Jan gebeurt eenvoudig een rood randje om een input veld maken. Het is een denk ik meer werk om alles over 2 pagina's te verdelen...