Velden van formulier alleen verzenden als hoger is als 0 en met tekst

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kees van Gelder

Kees van Gelder

04/03/2015 09:51:17
Quote Anchor link
Hallo,

Ik zit met de volgende vraag. Ik heb een formulier waarin mensen aan kunnen geven met een dropdown lijst welk aantal ze willen hebben van welk product.
Standaard is er een 0 ingevuld. Met het verzenden van het formulier worden alle velden verzonden.

Nu ben ik opzoek naar een mogelijkheid dat alleen de velden waar een hoger cijfer dan een 0 instaat en de velden met tekst moet worden verzonden.

Ik heb al rond gekeken op het internet, maar wat ik ook probeer iedere keer krijg ik een fout 500 melding.

Wie kan mij verder helpen?
 
PHP hulp

PHP hulp

19/04/2024 19:51:39
 
Frank Nietbelangrijk

Frank Nietbelangrijk

04/03/2015 10:08:56
Quote Anchor link
Verkeerde aanpak mij inziens. In principe worden alle formuliervelden binnen een formulier ( lees <form> ... </form> ) verzonden.

Je kunt twee dingen doen:

a) een foreach in PHP die naar het aantal kijkt. Indien aantal == 0 dan skippen
b) met javascript dynamisch formuliervelden toevoegen of verwijderen VOORDAT het formulier verzonden wordt.

Belangrijk met dit soort formulieren is hoe je je array's opbouwt. Bekijk dit voorbeeld eens:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';

if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    foreach($_POST['article'] as $article) {
        if($article['aantal'] > 0) {
            echo 'U heeft ' . $article['aantal'] . ' stuks artikel ' . $article['artnr'] . ' Besteld.';
        }
    }
}

?>

<form action="" method="post">
<label>Bananen</label>
<input type="number" name="article[0][aantal]" value="0" />
<input type="hidden" name="article[0][artnr]" value="375" />

<label>Appelen</label>
<input type="number" name="article[1][aantal]" value="0" />
<input type="hidden" name="article[1][artnr]" value="376" />

<label>Peren</label>
<input type="number" name="article[2][aantal]" value="0" />
<input type="hidden" name="article[2][artnr]" value="377" />

<button type="submit">Bestellen</button>
</form>
Gewijzigd op 05/03/2015 19:24:57 door Frank Nietbelangrijk
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.