Dit is een deel van mijn zoekpagina. In het echt is het langer en zijn er nog 7 zoekvakken en evenzoveel submitbuttons.


<form action="nummer" method="post">
<label for="Nummer">Nummer:</label>
<input type="text" name="Nummer" maxlength="6"/>
<input type="submit" value="Zoek" />
<input type="reset" value="Reset" /></form>



<form action="naam" method="post">
<label for="Naam">Naam:</label>
<input type="text" name="Naam" maxlength="15"/>
<input type="submit" value="Zoek" />
<input type="reset" value="Reset" />

</form>

Ik heb het idee dat het nogal gedateerd is.
Hoe kan ik zorgen dat er maar 1 submitbutton is (die alleen het ingevulde formulier doorstuurt)?
Waarom niet één formulier dat zoekt op ingevulde velden, op een zodanige wijze dat je resultaten vindt als ten minste één overeenkomstige zoekterm matcht? Dus als je nummer EN naam invult, dat er resultaten gevonden worden die voldoen aan nummer EN/OF naam? In je query gebruik je dan een OR om de zoektermen te scheiden.

Daarnaast, weet niet precies wat hier gedateerd aan is, maar je kun best één stuk functionaliteit hebben voor het zoeken, dus weet niet helemaal hoe je voor het een een action "nummer" hebt (wat dit ook moge zijn?) en voor het ander een action "naam"?

En tot slot, gebruikt de GET methode in plaast van de POST methode, zodat je makkelijk vooruit en achteruit kunt navigeren.

Dus beter is zoiets als:
<form action="search.php" method="get">
naam: <input type="text" name="naam">
nummer: <input type="text" name="nummer">
<button type="submit">zoek</button>
</form>

search.php wordt dan bijvoorbeeld aangeroepen met search.php?naam=&nummer=12 als je enkel het nummer 12 invult.
Thomas van den Heuvel op 17/02/2018 02:41:51

dus weet niet helemaal hoe je voor het een een action "nummer" hebt (wat dit ook moge zijn?) en voor het ander een action "naam"?


nummer gaat naar nummer.php en naam gaat naar naam.php
Thomas van den Heuvel op 17/02/2018 02:41:51

En tot slot, gebruikt de GET methode in plaast van de POST methode, zodat je makkelijk vooruit en achteruit kunt navigeren.

Er rolt maar een dier uit per nummer, en max 3 per naam dus navigeren is niet aan de orde, bij die andere gebruik ik inderdaad get en heb ik paginatie.

Met navigeren wordt ook het direct aanroepen van de URL genoemd, evenals de volgende/vorige functie van de browser. Als je POST zal gebruiken zal je nooit direct je zoekresultaat kunnen aanroepen, en zal je browser constant opnieuw vragenbij een refresh opnieuw het formulier te versturen.

Vandaar dat voor zoek-functionaliteiten vaak GET wordt gebruikt.
Marina janssen op 17/02/2018 02:50:26
Er rolt maar een dier uit per nummer, en max 3 per naam dus navigeren is niet aan de orde, bij die andere gebruik ik inderdaad get en heb ik paginatie.


Als een nummer maximaal één dier per nummer identificeert zou je daarvoor misschien ook een autocomplete kunnen maken, zodat als je dan op een automatisch aangevuld getal klikt, dat je direct naar een detailpagina van het bewuste beest gaat, in wezen (heh) hoef je niet te zoeken maar kun je dan direct naar het resultaat.

Reageren