Form werkt plotseling niet meer

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Yoeri Boven

Yoeri Boven

06/01/2012 13:13:10
Quote Anchor link
Hallo,

Ik heb een form dat altijd gewerkt heeft en nu niet meer, nadat ik onderstaande code toegevoegd heb.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php if(empty($titel or $kds or $ds or $aantal) or $categorie == 'Categorie'){
    die("Voert u alstublieft alle velden in.");
}
?>


Als ik op de 'submit'-knop druk gebeurt er niets. Dat probleem heb ik ook met een form dat ik net heb aangemaakt. De code voor het form is als volgt:
<form action="categorie.php" method="POST">
Categorie: <input type="text" name="categorie">
<input name="submit" type="submit" value="Voeg toe"
</form>

En de code van categorie.php is zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

$categorie
= $_POST['categorie'];
echo $categorie;

?>

Zou iemand mij alstublieft kunnen vertellen wat er mis is?
Gewijzigd op 06/01/2012 13:37:33 door Yoeri Boven
 
PHP hulp

PHP hulp

02/08/2021 10:35:15
 
- Ariën -
Beheerder

- Ariën -

06/01/2012 13:15:16
Quote Anchor link
Waar komen: $titel or $kds or $ds or $aantal vandaan?
 
Eddy B

Eddy B

06/01/2012 13:15:23
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if (empty($titel) || empty($kds) || empty($ds) || $categorie == 'Categorie') {
    die("Voert u alstublieft alle velden in.");
}

?>


Moet werken.
 
- SanThe -

- SanThe -

06/01/2012 13:16:14
Quote Anchor link
Leuke if(). Maar heb je zelf een idee wat die doet en wat die teruggeeft?
 
Yoeri Boven

Yoeri Boven

06/01/2012 13:37:15
Quote Anchor link
@- Aar - Titel, kds en ds komen van het formulier en heeft altijd gewerkt.
@Eddy Bedankt, hij werkt nu prima.
@- SanThe - Ik begrijp prima wat hij doet. ;)

Zou iemand mij kunnen vertellen waarom het tweede form niet werkt?
 
- Ariën -
Beheerder

- Ariën -

06/01/2012 13:38:20
Quote Anchor link
Yoeri Boven op 06/01/2012 13:37:15:
@- Aar - Titel, kds en ds komen van het formulier en heeft altijd gewerkt.

Die horen al sinds 2002 uit de $_POST variabelen te komen.

Dus $_POST['Titel'], $_POST['kds'] etc....
Lijkt erop dat je script gewoon 10 jaar(!!!!!!) oud is, of je hebt een heel belabberd/boek of tutorial gelezen.
Gewijzigd op 06/01/2012 13:39:32 door - Ariën -
 
Yoeri Boven

Yoeri Boven

06/01/2012 13:41:20
Quote Anchor link
Dit staat erboven:

$categorie = $_POST['categorie'];
$titel = $_POST['titel'];
$kds = $_POST['kds'];
$ds = $_POST['ds'];
$prijs = $_POST['prijs'];
$aantal = $_POST['aantal'];
$geschikt = $_POST['geschikt'];
 
- Ariën -
Beheerder

- Ariën -

06/01/2012 13:46:04
Quote Anchor link
Best onnodig, die $_POST kan je ook direct gebruiken, zonder ze nog apart in een variabele te stoppen.

Dus gebruik gewoon alleen je $_POST variabelen. EN ik heb een vermoeden dat die niet bestaan?
Echo ze anders eens, of gebruik print_r($_POST);
 
Eddy B

Eddy B

06/01/2012 13:46:06
Quote Anchor link
Waarom wil je geheugen verspillen om alle $_POST variabelen in normale te zetten?
 
Wouter J

Wouter J

06/01/2012 13:46:51
Quote Anchor link
@Eddy en Yoeri, die niet gebruiken. Zoals Karl altijd zei, niemand gaat dood als je iets fout doet. Handel de fout netjes af en zorg dat de gebruiker die mooi te zien krijgt.

En verder:
- Je begrijpt wat jou if doet, leg jou if dan maar eens uit...
 
Yoeri Boven

Yoeri Boven

06/01/2012 13:49:04
Quote Anchor link
Omdat ze verder in het script veel vaker gebruikt worden. Ik ben pas een maand met PHP bezig en het is voor school, dus het hoeft niet perfect.
Weet iemand waarom het tweede formulier fout is? Hij is volgens mij zoals ik ze altijd maak.
 
Eddy B

Eddy B

06/01/2012 13:50:18
Quote Anchor link
Je sluit de <input> niet goed af. En je kan het beter een keer goed leren toch? ;-)
 
- SanThe -

- SanThe -

06/01/2012 13:52:35
Quote Anchor link
Yoeri Boven op 06/01/2012 13:37:15:
@- SanThe - Ik begrijp prima wat hij doet. ;)


if(empty($titel or $kds or $ds or $aantal) or ....

Dit: $titel or $kds or $ds or $aantal geeft een true of een false.
En dan ga jij met empty() checken.

Niet echt logisch toch?
 
Yoeri Boven

Yoeri Boven

06/01/2012 13:53:08
Quote Anchor link
Uiteraard, je hebt gelijk.
Ik schaam mij trouwens diep dat ik een vraag stel terwijl het zo'n klein foutje was. -_-'

Toch bedankt allen!
 



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.