Na het inloggen..

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 »

Thijs Penny

Thijs Penny

20/07/2014 17:07:33
Quote Anchor link
Beste PHPHulp

Dit is mijn eerste bericht op dit forum, maar kende de site al een tijdje. Ik ben op zoek naar tips om een probleem op te lossen waar ik al een tijdje mee zit.

Wanneer ik een inlogsysteem maak, doe ik dat op een vrij eenvoudige manier. Een login form met de nodige inputvelden, waarna door de submit button te gebruiken naar dezelfde pagina verwezen wordt (PHP_SELF). Dan volgt natuurlijk de controle als de gegevens juist zijn, en indien dit het geval is geef ik een bericht dat er succesvol is ingelogd. Maar dan wil ik graag dat er een andere pagina opent, met een nieuwe menu e.d. Momenteel doe ik dit door in het bericht mee te geven dat ze worden doorverwezen, en na 4 seconden gebeurt dat ook, maar vind dit toch een beetje omslachtig werken.

Hoe kan ik dus, indien ze succesvol zijn ingelogd, ze direct naar de volgende pagina brengen, dus zonder die irritante redirect?


Bedankt!
 
PHP hulp

PHP hulp

08/11/2024 15:35:29
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 17:26:34
Quote Anchor link
Hallo Thijs, welkom.

Je kunt de gebruiker direct vanuit PHP redirecten. Dat gaat veel sneller :-)

De enigste voorwaarde is dat je geen enkele output gegenereerd hebt. (geen HTML, geen echo's)

Met andere worden moet je pagina beginnen met een blok PHP code waarin je de redirect uitvoert.
In deze code staan geen echo, print_f etc.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Location: pindakaas.php');
?>


Na deze redirect wordt je script tevens direct beëindigd.
Gewijzigd op 20/07/2014 19:56:46 door Frank Nietbelangrijk
 
Thijs Penny

Thijs Penny

20/07/2014 17:38:09
Quote Anchor link
Bedankt voor je snelle antwoord! Is dat de meest gebruikelijke manier die gehanteerd wordt wanneer een dergelijk systeem wordt opgebouwd?
 
- Ariën  -
Beheerder

- Ariën -

20/07/2014 17:58:00
Quote Anchor link
Ja, deze manier wordt vaak gebruikt.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 19:24:25
Quote Anchor link
Kijk wat mij betreft begin je goed. Je blijft namelijk op de pagina van het formulier zolang alle velden niet goed ingevuld zijn. Dat is wel zo logisch. Soms lees je het advies om geen PHP_SELF te gebruiken zoals hier maar gewoon het attribuut action leeg te laten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<form action="" method="post">
 
Wouter J

Wouter J

20/07/2014 19:35:33
Quote Anchor link
Quote:
Na deze redirect wordt je script tevens direct beëindigd.

Dit is niet waar. De header functie is alleen een functie die PHP vertelt wat voor extra headers hij moet meezenden bij de response. De rest van het script wordt hierna nog steeds uitgevoerd.

PHP zorgt er wel voor dat de content gegenereerd door het script dat volgt niet meer wordt uitgevoerd. Maar eventuele acties die andere (third party) services beinvloeden (zoals een curl call of een database call) worden alsnog uitgevoerd.

Daarom wordt er aangeraden na een header('Location: ...') call altijd een exit() call te plaatsen.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 19:58:12
Quote Anchor link
Oke, ik dacht dat het niet veel uitmaakte maar je uitleg is helder Wouter.
 



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.