Fout in mijn registratie formulier.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Joannis Orlandos

Joannis Orlandos

24/06/2010 10:26:51
Quote Anchor link
Ik heb ervoor gezorgd, dat mensen zo moeilijk mogelijk, mijn registratiesysteem voor de gek kunnen houden.
Nou, het systeem houd mij voor de gek :(

Dit is het formulier...

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
if(!isset($_POST['submit']))
{
echo $form;

$form = <<< EOFORM
<form action="$self" method="post">
<P>Username: <INPUT NAME='username' TYPE='text' SIZE=15 MAXLENGTH=15>  (Minimum 2 characters)<BR> $username_error <BR>
Password: <INPUT NAME='password' TYPE='password' SIZE=15 MAXLENGTH=15>  (Minimum 4 characters)<BR> $password_error <BR>
(First) Name: <INPUT  NAME='name' TYPE='text' SIZE=15 MAXLENGTH=15>  (Minimum 2 characters)<BR> $name_error <BR>
Email adress: <INPUT NAME='email' TYPE='text' SIZE=40 MAXLENGTH=40>  (Minimum 6 characters)<BR> $email_error <BR>
Submit: <INPUT NAME='submit' TYPE='submit' VALUE='submit'><BR>
More data will be avalible to fill in later on.<BR>
<H1>ALL FIELDS ARE REQUIRED!</H1></P><BR>
</form>


NOTICE: THE ADMIN WILL BE ABLE TO SEE YOUR IP ADRESS IN CASE THAT IP BANNING IS NEEDED.<BR>
NOTICE: WE WILL TRY TO PROTECT YOUR DATA AS BEST AS POSSIBLE, IF YOU DON'T WANT PEOPLE TO SEE YOUR INFORMATION: PLEASE GO TO YOUR ACCOUNT'S SETTINGS<BR>
$extra_error
EOFORM;


En waar het volgens mij ongeveer fout gaat:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
} elseif(isset($_POST['submit']) && isset($_POST['username']) && isset($_POST['[password']) && isset($_POST['name']) && isset($_POST['email'])) {


Of…

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
} else {
print("Please fill in all the fields in the form.<br>");
echo $form;
}


Dat denk ik, omdat hij maar blijft zeggen: Please fill in the form.
En het enige wat daarvoor nog komt zijn nog een paar //MESSAGES.
En mysql_connect, mysql_select_db, de standaard dingen dus.
En een $self = $_SERVER[‘PHP_SELF’];.

Code in code-tags geplaatst, wel zo overzichtelijk[/modedit]
Gewijzigd op 24/06/2010 10:29:40 door Chris -
 
PHP hulp

PHP hulp

23/11/2024 09:09:05
 
Chris -

Chris -

24/06/2010 10:30:46
Quote Anchor link
Joannis, kun je je volledige script plaatsen (in -tags)?
 
Ruben Portier

Ruben Portier

24/06/2010 10:50:14
Quote Anchor link
Om te kijken of iets ingevult is doe je toch gewoon:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if(!empty($_POST("naam")))
{

    // Leeg
}
?>
 

24/06/2010 10:54:33
Quote Anchor link
Let wel op dat je niet in alle gevallen empty kunt gebruiken, bijvoorbeeld als er een 0 kan worden ingevuld.
 
Ruben Portier

Ruben Portier

24/06/2010 10:59:03
Quote Anchor link
Wat je kan doen is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_POST["naam"] == "0")
{
}

?>


Simpel toch :)
 

24/06/2010 11:02:54
Quote Anchor link
Ruben Portier op 24/06/2010 10:59:03:
Wat je kan doen is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_POST["naam"] == "0")
{
}

?>


Simpel toch :)


Nee, nu mag er alleen een nul ingevuld worden. Als 1,2,3,4,5 of 6 (oftewel Afbeelding) ook mogelijk moeten zijn, dan is het beste om te controleren met == "".
 
Arjan -

Arjan -

24/06/2010 12:26:40
Quote Anchor link
Het is het beste om gebruik te maken van:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<? php
If(trim($_POST['veld']) == '') {
// leeg
}
? >
[
/code]
Gewijzigd op 24/06/2010 12:29:15 door Arjan -
 
Bart niethenk

bart niethenk

24/06/2010 12:52:49
Quote Anchor link
Post controleren :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(strtolower($_SERVER['REQUEST_METHOD']) == 'post') {
//doe je ding...
}
?>
Gewijzigd op 24/06/2010 12:53:34 door bart niethenk
 
Chris -

Chris -

24/06/2010 13:20:44
Quote Anchor link
Of minder moeilijk en gewoon

if($_SERVER['REQUEST_METHOD'] == 'POST')

in plaats van een extra functie aan te roepen...
 
Joannis Orlandos

Joannis Orlandos

24/06/2010 17:25:27
Quote Anchor link
Misschien is het handig als ik zeg waar het over gaat.
(SORRY) Ik dacht er niet aan...
Maar, telkens als ik me aanmeld (submit knop) zegt hij dat ik alle velden moet invullen. Dus trim is niet de manier, strtolower ook niet, dat doet hij later in mijn code bij het registreren, en ik weet dat hij de data goed ophaalt, anders zou het het formulier gewoon goed laten zien.

Maar: Het is opgelost.
Gewoon een (zoals gebruikelijk) schrijffoutje.
In de code:

} elseif(isset($_POST['submit']) && isset($_POST['username']) && isset($_POST['[password']) && isset($_POST['name']) && isset($_POST['email'])) {

bij: isset($_POST['[password']) is het mis gegaan, de ' en de [ omgedraaid.
Het vervelende hieraan, is dat hij geen Parse Error gaf.
Dus ik kon niet zien wat er mis was.
Maar toch bedankt voor het helpen!
Ik moest er gewoon veel tijd voor nemen.....
 
- SanThe -

- SanThe -

24/06/2010 18:21:52
Quote Anchor link
Staat error_reporting(E_ALL) wel aan?
 
Joannis Orlandos

Joannis Orlandos

25/06/2010 10:31:55
Quote Anchor link
Die code ga ik eens opzoeken!
 
Niels K

Niels K

25/06/2010 12:26:22
Quote Anchor link
Chris Horeweg op 24/06/2010 13:20:44:
Of minder moeilijk en gewoon

if($_SERVER['REQUEST_METHOD'] == 'POST')

in plaats van een extra functie aan te roepen...


Wat ik altijd doe is

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php

if( $_SERVER['REQUEST_METHOD'] == 'POST' &&
isset( $_POST[''], $_POST[''], $_POST[''] )

) {

// Doe de rest
}

?>


http://wiki.phpfreakz.nl/Isset_vs_REQUEST_METHOD
http://wiki.phpfreakz.nl/Het_Wiel_Uitgevonden:Formulieren
Gewijzigd op 25/06/2010 12:27:08 door Niels K
 
Joannis Orlandos

Joannis Orlandos

25/06/2010 17:28:55
Quote Anchor link
http://plaatscode.be/139637/

wachtwoord: mijnwachtwoord

2 fouten:
1.) Hij laat niets zien.
2.) Toen ik in de mail toevoegde dat hij je username en password laat zien kwam er een error.

En: een puntje 3.
Geen commentaar op dat je maar 1 keer een wachtwoord moet invoeren.
Dat doe ik op het einde, bespaart mij moeite met de fouten eruit halen!
 



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.