Form post checken, beste manier

Gestart dooranoniem917313 reacties22 weergaven

14 berichten · pagina 1 van 1

Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Beiden, want anders als je 2x een post doet op een pagina kan je er dus niet uithalen welke het is.

[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]] ==[/COLOR] [COLOR= #DD0000]"POST"[/COLOR][COLOR= #007700]){[/COLOR] [COLOR= #FF8000]//Eerst dus kijken of er gepost is[/COLOR]
    [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]submit_a[/COLOR][COLOR= #007700]])){[/COLOR] [COLOR= #FF8000]//Als submit a is
        //Doe iets[/COLOR]
    [COLOR= #007700]}[/COLOR][URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]submit_b[/COLOR][COLOR= #007700]])){[/COLOR] [COLOR= #FF8000]//Als submit b is
        //Doe iets[/COLOR]
    [COLOR= #007700]}
}[/COLOR]
?>
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Het werkt wel, maar dan krijg je onnodige en gebruikersonvriendelijke errors, zoals undefined submit_a waarschijnlijk als je deze code nu gebruikt.
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Topics in webwereld gaan niet dicht wink
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Gamedealer schreef:
Het werkt wel, maar dan krijg je onnodige en gebruikersonvriendelijke errors, zoals undefined submit_a waarschijnlijk als je deze code nu gebruikt.
Nee, want daar is je isset juist voor.

Als je die laatste code van Fanorg gebruikt dan heb je die if($_SERVER[REQUEST_METHOD] == "POST") niet nodig, want $_POST[dinges] bestaat alleen maar die die request method POST is.
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik krijg altijd undefined als ik isset gebruik hoor?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Gamedealer schreef:
Ik krijg altijd undefined als ik isset gebruik hoor?
Doe je wat fout.
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Ja, dat is juist het hele idee van die functie...
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Oké. Wat is het verschil er tussen dan, of kun je beter alleen isset() gebruiken?
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Gamedealer schreef:
Oké. Wat is het verschil er tussen dan, of kun je beter alleen isset() gebruiken?
Met isset kijk je of er een bepaalde (POST) variable bestaat.

Met $_SERVER[REQUEST_METHOD] kijk je of er een form is verzonden.
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ja, dan is het beste toch dat je ze allebei gebruikt of niet?
0
Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Ik zelf vind $_SERVER[REQUEST_METHOD] niet makkelijk werken
1. Teveel typen
2. Je weet niet welk form is gepost

Beter geef je de submit buttons een naam zoals pagina_formtype

Bijv.

index_login

smile

E; En dan if isset gebruiken ;p
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Je wilt altijd eerst kijken of de pagina gepost is, anders ga je onnodig alle $_POST-checks af.

Dus je gebruikt eigenlijk altijd eerst:

$_SERVER[REQUEST_METHOD]


"Is de pagina gepost?"

Voordat je post variabelen gaat checken:

isset($_POST[var])


"Bestaat een geposte variabele."
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Dus je gebruikt ze allebei...

Zei ik zoiets niet al of ligt dat aan mij emo?
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Gamedealer schreef:
Dus je gebruikt ze allebei...

Zei ik zoiets niet al of ligt dat aan mij emo?
Ja, maar ik wilde meer toelichting geven naar Nielsie. Jij zegt eigenlijk alleen "gebruik dit vanwege meerdere posts", maar ook met een enkele post wil je die check hebben.
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren