Blanke pagina na login

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Jelle Hi

Jelle Hi

17/07/2015 19:16:59
Quote Anchor link
Hey PHP'ers,

Ik zit met een klein probleempje, ik ben een systeem aan het ontwikkelen, en uiteraard zit daar een login aan vast ;).
Helaas krijg ik continu een blanke pagina te zien na het versturen van het inlogformulier.. door de (blanke) pagina een keer te refreshen en de formuliergegevens opnieuw te verzenden (zoals de browser vraagt) ben ik daarna wel ingelogd.. het grootste probleem: ik kan de oplossing niet vinden :/

loginfunctie
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
<?php
function login()
    {

        $this->data['title'] = "Inloggen";

        //validate form input
        $this->form_validation->set_rules('identity', 'Gebruikersnaam', 'required');
        $this->form_validation->set_rules('password', 'Wachtwoord', 'required');

        if ($this->form_validation->run() == true)
        {

            //check to see if the user is logging in
            //check for "remember me"

            $remember = (bool) $this->input->post('remember');

            if ($this->ion_auth->login($this->input->post('identity'), $this->input->post('password'), $remember))
            {

                //if the login is successful
                //redirect them back to the home page

                $this->session->set_flashdata('message', $this->ion_auth->messages());
                redirect('/', 'refresh');
            }

            else
            {
                //if the login was un-successful
                //redirect them back to the login page

                $this->session->set_flashdata('message', $this->ion_auth->errors());
                redirect('auth/login', 'refresh'); //use redirects instead of loading views for compatibility with MY_Controller libraries
            }
        }

        else
        {
            //the user is not logging in so display the login page
            //set the flash data error message if there is one

            $this->data['message'] = (validation_errors()) ? validation_errors() : $this->session->flashdata('message');

            $this->data['identity'] = array('name' => 'identity',
                'id' => 'identity',
                'type' => 'text',
                'value' => $this->form_validation->set_value('identity'),
            );

            $this->data['password'] = array('name' => 'password',
                'id' => 'password',
                'type' => 'password',
            );


            $this->_render_page('auth/login', $this->data);
        }
    }

?>


loginformulier
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
<form action="" method="post" accept-charset="utf-8">
          <div class="form-group has-feedback">
            <input type="text" class="form-control" placeholder="Gebruikersnaam" name="<?php echo $identity['name']; ?>"/>
            <span class="glyphicon glyphicon-user form-control-feedback"></span>
          </div>
          <!-- -->
          <div class="form-group has-feedback">
            <input type="password" class="form-control" placeholder="Wachtwoord" name="<?php echo $password['name']; ?>"/>
            <span class="glyphicon glyphicon-lock form-control-feedback"></span>
          </div>
          <div class="row">
            <div class="col-xs-8">    
              <div class="checkbox icheck">
                <label>
                  <input type="checkbox" value="1" id="remember"> Onthouden
                </label>
              </div>  
                            
            </div><!-- /.col -->
            <div class="col-xs-4">
              <button type="submit" class="btn btn-primary btn-block btn-flat">Inloggen</button>
            </div><!-- /.col -->
          </div>
      </form>  


Ohja, ik gebruik CodeIgniter :)
Gewijzigd op 17/07/2015 19:18:23 door Jelle Hi
 
PHP hulp

PHP hulp

26/04/2024 20:42:33
 
- SanThe -

- SanThe -

17/07/2015 20:23:56
Quote Anchor link
Zet error_reporting (E_ALL) eens aan.
Op regel 40 en 44 staat een komma teveel.
 
Jelle Hi

Jelle Hi

17/07/2015 20:52:19
Quote Anchor link
Ik heb de twee komma's verwijderd :)

De error_reporting op E_ALL werkt helaas niet (geplaatst op de index.php), krijg nog steeds een een blanke pagina :/
 
Thomas van den Heuvel

Thomas van den Heuvel

17/07/2015 22:02:00
Quote Anchor link
Naast dat je aangeeft welke foutmeldingen je wilt zien (error_reporting(E_ALL)) moet je ook aangeven dat je ze op je scherm wilt tonen met ini_set('display_errors', 'stdout');

Daarnaast kan het de moeite lonen om de redirects tijdelijk uit te commenten om te kijken of hiervoor mogeijk fouten geproduceerd werden die je niet ziet omdat je meteen wordt geredirect.

Daarnaast zou je stapsgewijs in je code die()-statements kunnen zetten om te zien welk pad door je if-else statement wordt gekozen en welke er voor problemen zorgt zodat je steeds beter op het daadwerkelijke probleemgebied in kunt zoomen / deze af kunt bakenen.

En dan is het een kwestie van data naar je scherm dumpen om te zien wat er inhoudelijk misgaat.
Gewijzigd op 17/07/2015 22:04:08 door Thomas van den Heuvel
 
Eddy E

Eddy E

18/07/2015 08:11:42
Quote Anchor link
Het heldere idee van een zaterdagochtend:

Roep je de functie wel aan?
Want dat laat je niet zien in je code.
 
Jelle Hi

Jelle Hi

18/07/2015 08:34:49
Quote Anchor link
@Thomas uiteraard heb ik ook aangegeven dat ik de errors wil tonen ;) De rest van je debugging-plan ga ik vandaag wel even uitvoeren.

@Eddy de index.php van CodeIgniter roept de functie aan (url: /auth/login), leek me lichtelijk overbodig om die code ook te posten, dus helaas geen heldere zaterdagochtendoplossing ;(
 
Eddy E

Eddy E

18/07/2015 08:39:56
Quote Anchor link
Dan wordt het dus, net als Thomas zegt, her en der wat echo's kunnen plaatsen kom te kijken waar je wel/niet komt.
 
Jelle Hi

Jelle Hi

26/07/2015 21:47:46
Quote Anchor link
Eventjes niet bezig geweest vanwege ziekte, maar toch weer aan de slag gegaan :)

Ik heb diverse echo's geplaatst om te kijken waar hij vast liep, nu blijkt dat alles werkt tot aan de redirect. Ik heb al geprobeerd om de redirect te vervangen voor header('Location: url'); alleen dat werkte helaas ook niet..

Iemand nog suggesties? Zou een beetje vervelend zijn dat ik continu na een login de pagina moet refreshen om echt in te loggen :/
 
- SanThe -

- SanThe -

26/07/2015 21:52:33
Quote Anchor link
Bestaat de function redirect() wel?
 
Jelle Hi

Jelle Hi

26/07/2015 21:56:52
Quote Anchor link
@-SanThe-
Ik laad een stukje eerder in de code de url-helper van CodeIgniter in, redirect() is daar een functie van. Verder werkt het volgende ook niet..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
header('location: http://www.url.nl/');
 
Eddy E

Eddy E

27/07/2015 08:03:48
Quote Anchor link
Staat error_reporting() op E_ALL?
Waarschijnlijk heb je output voor de header(), en dan doet ie het niet.
 
Jelle Hi

Jelle Hi

27/07/2015 11:30:57
Quote Anchor link
@Eddy, error_reporting() staat (nog steeds) op E_ALL, helaas krijg ik geen errors :/

Ik ga inderdaad maar eens nalopen of er output voor de header() staat. Alleen het vreemde is, als ik de blanke pagina refresh, stuurt hij me wel door, dus dan lijkt de redirect()/header() wel te werken(?) #iksnaphetnietmeer
 
- SanThe -

- SanThe -

27/07/2015 11:34:24
Quote Anchor link
Kan je in de serverlogfile kijken?
 
Jelle Hi

Jelle Hi

27/07/2015 14:02:20
Quote Anchor link
In de logfile waarin ik toegang tot heb (via DirectAdmin) staat niets, echt helemaal niets (misschien klopt dat ook niet helemaal). Verder is het een account op een reseller pakket dus kan ik verder niet bij de server.
 



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.