validatie formulier vraag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Software Developer Java

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

Gezocht: Ervaren VB6 developer met C# ambitie!

Bedrijfsomschrijving Dit bedrijf is een vooraanstaande softwareleverancier die gespecialiseerd is in het ontwikkelen van software pakketten voor autoschade herstel bedrijven. De software wordt gebruikt door meer dan de helft van alle autoschade herstel bedrijven in Nederland. Het team van professionals is op zoek naar getalenteerde collega developers die hun vaardigheden willen inzetten om het bedrijf te laten groeien. Functieomschrijving Voor dit bedrijf zoek ik een ervaren VB6 / VB.NET developer met interesse om op termijn verder te gaan in C#. In deze functie ben je verantwoordelijk voor het onderhouden van de bestaande softwarepakketten. Een deel van de code is nog

Bekijk vacature »

Software Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Cloud Developer

Cloud Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

Bekijk vacature »

Senior .NET developer

Functie Als Senior .NET ontwikkelaar ga jij aan de slag in ons Research & development team. Ons team bestaat uit 17 collega’s! Wij zijn momenteel druk bezig met het opzetten van een geheel nieuwe architectuur voor een nieuw product. Hierbij maken wij o.a. gebruik van VS2022 en .NET 6.0. Jouw functie is dan ook voornamelijk backend georiënteerd bij ons. Aangezien wij meetapparatuur ontwikkelen voor de chemische industrie is het ook erg belangrijk om kwalitatief hoogwaardige software te ontwikkelen voor de besturing hiervan. Verder ben jij verantwoordelijk voor het designen, implementeren en testen van nieuwe features. Ook zorg jij voor toekomstbestendige

Bekijk vacature »

Junior .NET developer

Functie Ons programma is voor afgestudeerde enthousiastelingen die het als een uitdaging zien om met een klein dynamisch team bij de grootste bedrijven van Nederland aan de slag te gaan. Tijdens jouw dienstverband word jij begeleid door een talent manager. Het ontwikkelen van jouw talent staat hierbij centraal. Het programma doorloop je met een team van circa 8 Mede- trainees. De eerste maand start je met een fulltime inhouse opleiding. Deze staat geheel in het teken van de werkzaamheden die jij verder in het programma zult uitvoeren. Na deze opleidingsmaand ga je aan de slag in een dynamische omgeving bij

Bekijk vacature »

Junior .NET developer

Functie Wij zijn bezig met het ontwikkelen van een nieuw product en wij hebben jouw hulp hierbij nodig! Als junior .NET ontwikkelaar krijg jij de kans om samen met ons deze nieuwe uitdaging aan te gaan! Momenteel bestaat ons team uit drie interim Software Engineers. Twee hiervan zijn zeer ervaren .NET specialisten die inmiddels hun strepen in dit vakgebied al hebben behaald. Ook hebben wij een junior als onderdeel van ons team die zich op dit moment nog bezig houdt met de Front-end (Angular/TypeScript), maar zich nu ook meer gaat verdiepen in de backend. Wij willen ons team graag verder

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van IT Operations Manager! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Junior Java Developer

Dit ga je doen Full stack web- en appdevelopment; Vertalen van de functionele wensen naar de technische specificaties; Sturing geven aan/klank board zijn voor de software teams; Trainen van de software teams; Sparren met klanten; Meedenken over architectuur. Hier ga je werken De organisatie is een bureau welke websites en mobiele applicaties bouwt voor verschillende toonaangevende organisaties. Hierbij richten zij zich voornamelijk op de sectoren leisure, overheid en zorg. De sfeer intern kenmerkt zich door informaliteit, gezelligheid en ambitie. Ze werken dag in dag uit samen om mooie producten op te leveren voor hun klanten. Op dit moment zijn er

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »
Robert Jansen

Robert Jansen

14/02/2017 15:20:48
Quote Anchor link
hallo,

Ik heb een formulier waar een php validatie opzit (dus als je nix invult dan krijg je in het rood te zien dat je de velden gebruikersnaam en wachtwoord in moet vullen).
Maar als je wel een gebruikersnaam en wachtwoord invult dan is het de bedoeling dat inloggen.php wordt uitgevoerd (het controleren van de gebruikersnaam en wachtwoord in de database).
En het laatste werkt niet.
Ik krijg dan de foutmelding:
Notice: Undefined index: gebruikersnaam in C:\xampp\htdocs\website\inloggen.php on line 8

Notice: Undefined index: wachtwoord in C:\xampp\htdocs\website\inloggen.php on line 9

in het formulier bij action staat nu:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>">

ik heb bij action inloggen.php gezet maar dan werkt de validatie niet als de velden leeg zijn.

mijn vraag is: Hoe moet ik inloggen.php uitvoeren als er in de velden gebruikersnaam en wachtwoord wel iets ingevuld is? en als de velden gebruikersnaam en wachtwoord leeg zijn dat dan de rode tekst komt dat de velden ingevoerd moeten worden als op de knop wordt geklikt.

alvast bedankt

index.php
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
<?php
$nameErr
= $wwErr = '';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$valid = true;

  if (empty($_POST["gebruikersnaam"])) {
    $nameErr = "Gebruikersnaam is verplicht";
    $valid = false;
  }

 
  if (empty($_POST["wachtwoord"])) {
    $wwErr = "Wachtwoord is verplicht";
    $valid = false;
  }

  
  if($valid){
 
  $username = mysqli_real_escape_string ($conn, $_POST ['gebruikersnaam']);
$password = mysqli_real_escape_string ($conn, $_POST ['wachtwoord']);
   header('Location: inloggen.php');
   exit();
  }
  
  }

?>

<!DOCTYPE HTML>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Beheer</title>
    <link href="style.css" type="text/css" rel="stylesheet">
    
</head>

<body>
<?php
//include 'includes/header.php';
?>

<header>
    <img src="images/logo_wit.png" width="200" alt="logo"/>
</header>
<div id="main_container">

<div id="inloggen">
<p><span class="error">* verplicht veld</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>">
    Gebruikersnaam: <input type="text" name="gebruikersnaam" /><span class="error">* <?php echo $nameErr;?></span><br /><br />
    
    Wachtwoord: <input type="password" name="wachtwoord" /><span class="error">* <?php echo $wwErr;?></span><br /><br />
    
    <input type="submit" name="submit" value="Inloggen" />
</form>

</div>
</div>
</body>
</html>


inloggen.php
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
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
 
include 'connect.php';
session_start();
 
$username = mysqli_real_escape_string ($conn, $_POST ['gebruikersnaam']);
$password = mysqli_real_escape_string ($conn, $_POST ['wachtwoord']);
 
$query = ("SELECT naam, wachtwoord FROM leden WHERE naam= ? AND wachtwoord= ? LIMIT 1 ");
$stmt = $conn->prepare($query);
$stmt->bind_param("ss", $username, $password );
$stmt->execute();
$stmt->bind_result($username, $password);
$stmt->store_result();
if($stmt->num_rows > 0) {
      
     while($stmt->fetch()) {
     $_SESSION ['gebruikersnaam'] = $username;
     header('Location: dashboard.php');

    }
            
}

 
else {
    echo "<h3>incorrect wachtwoord of gebruikersnaam, voer opnieuw in <a href='index.php'>Klik hier</a></h3>";
    die ();//als je niks intypt en je klikt toch op de knop login dan krijg je deze melding
     }
 

?>
 
PHP hulp

PHP hulp

24/11/2024 11:13:50
 
Frank Nietbelangrijk

Frank Nietbelangrijk

14/02/2017 15:51:53
Quote Anchor link
- Zet alles in één bestand. Dat is het meest logische. Je kunt wel bestanden includen waarin functies of classes staan. Immers wil je dat een gebruiker op dezelfde pagina blijft TOTDAT alles goed ingevuld is en daarna stuur je hem gewoon door.
- Begin in dat bestand met de PHP. Dit is je applicatie waarin je alles gaat regelen behalve DE OUTPUT. (zie ook mijn reactie in dit draadje). Begin daarna met de output.

- Controleer of je formulier verstuurd is met deze regel
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
?>
Gewijzigd op 14/02/2017 15:55:43 door Frank Nietbelangrijk
 
Danny von Gaal

Danny von Gaal

15/02/2017 21:44:35
Quote Anchor link
Haal sowieso htmlspecialchars weg in het action veld en verander het gewoon naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

* htmlspecialchars veranderd bijvoorbeeld & in &amp. Daar heb je niks aan als je een formulier verstuurd.

Daarnaast doe je form afhandeling in één bestand. Of op de pagina zelf dmv
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
?>

of stuur de pagina naar inloggen.php met
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<form method="post" action="inloggen.php">


Ik stel voor om het tweede te doen want bij het eerste loop je tegen het probleem dat als iemand de pagina ververst met F5 het formulier opnieuw gepost wordt.

Op inloggen.php loop je daarna alles door en check je of alle velden ingevuld zijn en of alle waardes aan bepaalde voorwaarden voordoen. Als de ingevulde waardes ergens niet voldoen aan wat je wilt dan kan je een error opslaan in een $_SESSIE['error'] en dan dmv header("Location: index.php"); en een exit(); erachter de gebruiker terug sturen naar het formulier.

Onder het formulier kan je dan de error opvangen bijvoorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(isset($_SESSION['error'])) {
echo $_SESSION['error'];
}

?>
Gewijzigd op 16/02/2017 10:01:04 door Danny von Gaal
 
Ben van Velzen

Ben van Velzen

15/02/2017 23:00:03
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$username
= mysqli_real_escape_string ($conn, $_POST ['gebruikersnaam']);
$password = mysqli_real_escape_string ($conn, $_POST ['wachtwoord']);
 
$query = ("SELECT naam, wachtwoord FROM leden WHERE naam= ? AND wachtwoord= ? LIMIT 1 ");
$stmt = $conn->prepare($query);
$stmt->bind_param("ss", $username, $password );
$stmt->execute();
$stmt->bind_result($username, $password);
$stmt->store_result();
?>


Beetje vreemd dat je dubbel gaat escapen. Gebruik prepared statements óf escape, nooit beide. Liefst prepared statements natuurlijk.
 
Thomas van den Heuvel

Thomas van den Heuvel

16/02/2017 10:41:59
Quote Anchor link
Danny von Gaal op 15/02/2017 21:44:35:
Haal sowieso htmlspecialchars weg in het action veld en verander het gewoon naar:
...
* htmlspecialchars veranderd bijvoorbeeld & in &amp. Daar heb je niks aan als je een formulier verstuurd.

Desalniettemin is het verstandig om alle output te escapen, zo ook form actions. Al bevat PHP_SELF geen querystring-variabelen.

Ben van Velzen op 15/02/2017 23:00:03:
Beetje vreemd dat je dubbel gaat escapen. Gebruik prepared statements óf escape, nooit beide. Liefst prepared statements natuurlijk.

Maar prepared statements in MySQLi is nogal meh.
prepare, bind_param, bind_result, store_result... Aint nobody got time fo dat :).
Als je dan toch prepared statements wilt gebruiken is PDO misschien een beter alternatief.

@topicstarter: scheid of alles in aparte bestanden, of deel het op een andere manier op in verschillende acties (tonen van formulier, verwerken van formulier etc.). De aanpak die @Frank aangeeft kan de oplossing zijn... totdat je met meer dan twee acties te maken krijgt. Dan wordt het al snel een brei met één (of zelfs meerdere) gigantisch(e) if-elseif-elseif-else statement(s).
Gewijzigd op 16/02/2017 10:43:04 door Thomas van den Heuvel
 



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.