Verificatie script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 volgende »

- SanThe -

- SanThe -

23/02/2023 12:21:38
Quote Anchor link
Uiteraard het beste.
Ivo P op 23/02/2023 11:27:38:
if($_SERVER['REQUEST_METHOD'] === 'POST') {
}
 
PHP hulp

PHP hulp

15/09/2024 01:03:30
 
Ozzie PHP

Ozzie PHP

23/02/2023 12:32:35
Quote Anchor link
@SanThe ... altijd grappig hoe jij 'ineens' weer uit het niets verschijnt :-) Winterslaap gehouden? :-D
 
Arno van Zanten

Arno van Zanten

23/02/2023 14:15:03
Quote Anchor link
- SanThe - op 23/02/2023 12:21:38:
Uiteraard het beste.
Ivo P op 23/02/2023 11:27:38:
if($_SERVER['REQUEST_METHOD'] === 'POST') {
}




Dit lijkt me een goede oplossing, straks eens proberen toe te passen.
 
- Ariën  -
Beheerder

- Ariën -

23/02/2023 15:33:23
Quote Anchor link
Dat geeft in ieder geval al duidelijk aan dat er een gecontroleerd wordt of er ge-POST is.
Die techniek pas ik al jaren toe. Isset() voor een controle of er wat verstuurd is kan ook, maar is niet echt correct.
 
Michael -

Michael -

23/02/2023 16:32:34
Quote Anchor link
Volgens mij is dat al gezegd, maar de manier waarop jij de leeftijd uitgerekend vind ik best omslachtig.
Zou eerder iets doen als
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
    $birthday = new DateTime($_POST['year'] . '-' . $_POST['month'] . '-' . $_POST['day']);
    $today = new DateTime('today');
    $age = $birthday->diff($today)->y;
  
    echo $age;
}

?>
Gewijzigd op 23/02/2023 16:32:55 door Michael -
 
Arno van Zanten

Arno van Zanten

23/02/2023 16:50:23
Quote Anchor link
Michael - op 23/02/2023 16:32:34:
Volgens mij is dat al gezegd, maar de manier waarop jij de leeftijd uitgerekend vind ik best omslachtig.
Zou eerder iets doen als
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
    $birthday = new DateTime($_POST['year'] . '-' . $_POST['month'] . '-' . $_POST['day']);
    $today = new DateTime('today');
    $age = $birthday->diff($today)->y;
  
    echo $age;
}

?>


Ja ik zag de code van iemand op youtube en deze overgeschreven, werkte wel als losse page, maar zodra ik heb wil toepassen als een include, werdt het verhaal anders.

Born : https://www.youtube.com/@abell12
Links : https://www.youtube.com/watch?v=Gb6PjXAY5a8&list=PLF72E8A5A53766BE6
Gewijzigd op 23/02/2023 16:52:18 door Arno van Zanten
 
- Ariën  -
Beheerder

- Ariën -

23/02/2023 16:52:10
Quote Anchor link
Includeren is geen rocketscience, hoor. :-)

Maar als je een grote site hebt, is het zeker geen slecht idee om alle op te vragen pagina's in de index.php te includeren, aan de hand van $_GET. (index.php?pagina=contact)

In dit geval zou je eenmalig een check kunnen gebruiken.
Gewijzigd op 23/02/2023 16:58:16 door - Ariën -
 
Ad Fundum

Ad Fundum

25/02/2023 09:42:39
Quote Anchor link
In plaats van 3 HTTP POST variabelen voor een datum kan je er ook 1 gebruiken met <input type="date">, daarmee voorkom je ongeldige invoer (tenzij iemand echt moeite doet) en heb je er ook meteen een date picker bij met de locale van de browser.
 
Michael -

Michael -

27/02/2023 15:26:14
Quote Anchor link
Is het inmiddels al gelukt? Waar loop je anders tegenaan? Welke foutmeldingen?
 
Arno van Zanten

Arno van Zanten

27/02/2023 20:29:57
Quote Anchor link
Nee het lukt wel, maar ik krijg nu dit als ik de pagina refresh.

ERR_TOO_MANY_REDIRECTS
 
- Ariën  -
Beheerder

- Ariën -

27/02/2023 20:41:55
Quote Anchor link
Dan heb je, vermoedelijk in dit script, een location-header die steeds naar zichzelf verwijst. En dan kom je dus in een loop.
 
Arno van Zanten

Arno van Zanten

27/02/2023 20:50:27
Quote Anchor link
okay, dan moet ik dus dat even aanpassen
 
- Ariën  -
Beheerder

- Ariën -

27/02/2023 21:00:06
Quote Anchor link
Klopt.
 
Arno van Zanten

Arno van Zanten

27/02/2023 21:31:07
Quote Anchor link
Ik hebb dus nu dit en dit werkt, maar met refresh dus die error.

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
    session_start();
    error_reporting(0);
    
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);
    

    if(isset($_SESSION['over18']))
    {

        header('location: index.php');
    }

    if(isset($_SESSION['under18']))
    {

        header('location: https://www.disney.com/');
    }

    
    echo "<head>
            <title>Sexy Devil</title>
            <link href='inc/div.css' rel='stylesheet' type='text/css'/>
        </head>
        <body>"
;
    
    if(isset($_POST['verify']))
                {

                $day = $_POST['day'];
                $month = $_POST['month'];
                $year = $_POST['year'];
                
                $birthday = mktime(0,0,0,$month,$day,$year);
                $difference = time() - $birthday;
                
                $age = floor($difference / 31556926);
                
                if($age >= 18)
                    {

                        $_SESSION['over18'] = 1;
                        include('inc/start.php');
                    }
else{
                        $_SESSION['under18'] = 0;
                        header('location: https://www.disney.com/');
                    }
                }
else {
                    echo
                        "<div class='text-user'>Insert your birthday to verify</div>
                            <div class='container'>
                                <form id='contact' action='index.php' method='POST'>
                                    <fieldset>
                                        <input placeholder='Day' type='number' name='day' tabindex='1' autofocus>
                                        <input placeholder='Month' type='number' name='month' tabindex='1' autofocus>
                                        <input placeholder='Year' type='number' name='year' tabindex='1' autofocus>
                                    </fielfdset>
                                    <button name='verify' type='submit' id='contact-submit' data-submit='...Sending'>Verify</button>
                                </form>
                            </div>
                        <div class='text-user'>Under construction, not all working yet</div>
                        "
;
                }

?>


Kan ik het bovenste gedeelte niet beter aanpassen naar :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
    if(isset($_SESSION['over18']))
    {
        header('location: index.php');
    }else{
        header('location: https://www.disney.com/');
    }
 
- Ariën  -
Beheerder

- Ariën -

27/02/2023 21:36:09
Quote Anchor link
Dat is nog praktischer inderdaad.
 
Michael -

Michael -

28/02/2023 08:11:27
Quote Anchor link
Hoe heet het bestand? Want als deze index.php heet, dan verwijs je dus naar index.php en op die manier krijg je dus een loop waardoor die foutmelding optreed.
Gewijzigd op 28/02/2023 08:45:48 door Michael -
 
Arno van Zanten

Arno van Zanten

28/02/2023 09:03:16
Quote Anchor link
Michael - op 28/02/2023 08:11:27:
Hoe heet het bestand? Want als deze index.php heet, dan verwijs je dus naar index.php en op die manier krijg je dus een loop waardoor die foutmelding optreed.


Dit is inderdaad de index.php en ja dat dacht ik ook al, daarom dat ik een oplossing zoek
 
- Ariën  -
Beheerder

- Ariën -

28/02/2023 09:27:04
Quote Anchor link
Is het niet inc/start.php?
 
Arno van Zanten

Arno van Zanten

28/02/2023 09:33:06
Quote Anchor link
start.php bevat een andere pagina.
Dat is de 18plus pagina
 
- Ariën  -
Beheerder

- Ariën -

28/02/2023 09:38:38
Quote Anchor link
Oke. Hoe wil je eigenlijk die headers op lijn 39 en 42 uitvoeren terwijl je daarvoor al HTML hebt staan?
 

Pagina: « vorige 1 2 3 volgende »



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.