Form is zero
Ik had een code geschreven zodat mensen uit een dropdown list, waarbij ze aantallen van producten konden kiezen, tenminste 1 product moesten kiezen :
Alleen werkt hij dus niet. Wanneer ik alles op "0" (nul) laat staan geeft hij niet die melding.. Weet iemand wat er aan veranderd moet worden?
Code (php)
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
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
<?php
session_start();
if ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' ) {
$_SESSION[ ' form2 ' ] = $_POST;
}
ini_set('display_errors',1);
error_reporting(E_ALL);
if ( ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' )
&& (isset($_POST['herenfietsen']) && ctype_digit( $_POST['herenfietsen'] ) )
&& (isset($_POST['damesfietsen']) && ctype_digit( $_POST['damesfietsen'] ) )
&& (isset($_POST['kinderfietsen']) && ctype_digit( $_POST['kinderfietsen'] ) )
&& (isset($_POST['hybride']) && ctype_digit( $_POST['hybride'] ) )
&& (isset($_POST['mountainbikes']) && ctype_digit( $_POST['mountainbikes'] ) )
&& (isset($_POST['tandems']) && ctype_digit( $_POST['tandems'] ) )
&& (isset($_POST['steppen']) && ctype_digit( $_POST['steppen'] ) )
)
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == "0" ) {
echo "Je moet wel in ieder geval één fiets huren hoor!";
exit();
}
?>
session_start();
if ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' ) {
$_SESSION[ ' form2 ' ] = $_POST;
}
ini_set('display_errors',1);
error_reporting(E_ALL);
if ( ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' )
&& (isset($_POST['herenfietsen']) && ctype_digit( $_POST['herenfietsen'] ) )
&& (isset($_POST['damesfietsen']) && ctype_digit( $_POST['damesfietsen'] ) )
&& (isset($_POST['kinderfietsen']) && ctype_digit( $_POST['kinderfietsen'] ) )
&& (isset($_POST['hybride']) && ctype_digit( $_POST['hybride'] ) )
&& (isset($_POST['mountainbikes']) && ctype_digit( $_POST['mountainbikes'] ) )
&& (isset($_POST['tandems']) && ctype_digit( $_POST['tandems'] ) )
&& (isset($_POST['steppen']) && ctype_digit( $_POST['steppen'] ) )
)
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == "0" ) {
echo "Je moet wel in ieder geval één fiets huren hoor!";
exit();
}
?>
Alleen werkt hij dus niet. Wanneer ik alles op "0" (nul) laat staan geeft hij niet die melding.. Weet iemand wat er aan veranderd moet worden?
Code (php)
1
2
3
4
2
3
4
<?php
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == "0" ) {
?>
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == "0" ) {
?>
Daar vergelijk je allemaal ints met een string, niet de bedoeling lijkt me.
Misschien wat doen met empty?
$_SESSION[ ' form2 ' ] = $_POST; kan je ook kwijt in de tweede if.
(Exit is wel een hard eind.)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
session_start();
ini_set('display_errors',1);
error_reporting(E_ALL);
if ($_SERVER['REQUEST_METHOD'] == 'POST' )
{
$_SESSION['form2'] = $_POST;
if(empty($_POST['herenfietsen']) || empty($_POST['damesfietsen']) || empty($_POST['kinderfietsen']) /* || enz.. */)
{
echo "Je moet wel in ieder geval één fiets huren hoor!";
}
}
?>
session_start();
ini_set('display_errors',1);
error_reporting(E_ALL);
if ($_SERVER['REQUEST_METHOD'] == 'POST' )
{
$_SESSION['form2'] = $_POST;
if(empty($_POST['herenfietsen']) || empty($_POST['damesfietsen']) || empty($_POST['kinderfietsen']) /* || enz.. */)
{
echo "Je moet wel in ieder geval één fiets huren hoor!";
}
}
?>
Code (php)
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
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
<?php
session_start();
if ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' ) {
$_SESSION[ ' form2 ' ] = $_POST;
}
ini_set('display_errors',1);
error_reporting(E_ALL);
if ( ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' )
&& (isset($_POST['herenfietsen']) && ctype_digit( $_POST['herenfietsen'] ) )
&& (isset($_POST['damesfietsen']) && ctype_digit( $_POST['damesfietsen'] ) )
&& (isset($_POST['kinderfietsen']) && ctype_digit( $_POST['kinderfietsen'] ) )
&& (isset($_POST['hybride']) && ctype_digit( $_POST['hybride'] ) )
&& (isset($_POST['mountainbikes']) && ctype_digit( $_POST['mountainbikes'] ) )
&& (isset($_POST['tandems']) && ctype_digit( $_POST['tandems'] ) )
&& (isset($_POST['steppen']) && ctype_digit( $_POST['steppen'] ) )
)
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == 0 ) {
echo "Je moet wel in ieder geval één fiets huren hoor!";
exit();
}
?>
session_start();
if ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' ) {
$_SESSION[ ' form2 ' ] = $_POST;
}
ini_set('display_errors',1);
error_reporting(E_ALL);
if ( ($_SERVER[ 'REQUEST_METHOD' ] == ' POST ' )
&& (isset($_POST['herenfietsen']) && ctype_digit( $_POST['herenfietsen'] ) )
&& (isset($_POST['damesfietsen']) && ctype_digit( $_POST['damesfietsen'] ) )
&& (isset($_POST['kinderfietsen']) && ctype_digit( $_POST['kinderfietsen'] ) )
&& (isset($_POST['hybride']) && ctype_digit( $_POST['hybride'] ) )
&& (isset($_POST['mountainbikes']) && ctype_digit( $_POST['mountainbikes'] ) )
&& (isset($_POST['tandems']) && ctype_digit( $_POST['tandems'] ) )
&& (isset($_POST['steppen']) && ctype_digit( $_POST['steppen'] ) )
)
if ((int) $_POST['herenfietsen'] + (int) $_POST['damesfietsen'] + (int) $_POST['kinderfietsen'] + (int) $_POST['hybride'] +
(int) $_POST['mountainbikes'] + (int) $_POST['tandems'] + (int) $_POST['steppen'] == 0 ) {
echo "Je moet wel in ieder geval één fiets huren hoor!";
exit();
}
?>
Ik heb het gedeelte: == "0" ) veranderd in: == 0 ) zodat het gezien word als een int maar lijkt niet te helpen
@PHP newbie: Is dat niet een code die die echo geeft als alles empty? En de velden kunnen nooit echt empty zijn, empty zou hier 0 (nul) zijn. Of ziet hij 0 ook als empty?
'Joshua:
@PHP newbie: Is dat niet een code die die echo geeft als alles empty? En de velden kunnen nooit echt empty zijn, empty zou hier 0 (nul) zijn. Of ziet hij 0 ook als empty?
Als je nou eens kijkt voordat je gaat roepen. Ik heb zelfs nog een link geplaatst naar php.net over empty.
Ja je hebt gelijk. Sorry had over de link heen gelezen.
Bedankt gasten, hij werkt =)
Bedankt gasten, hij werkt =)
Nee hij werkt niet. Met die code van PHP Newbie moet je alles in hebben gevuld. Hij pikt het niet als er eentje bijvoorbeeld nog op 0 staat. Dat is een beetje het tegenover gestelde van wat ik had geschreven oorspronkelijk, wat er vanuit ging dat er tenminste 1 object niet empty mocht zijn.
Hmm..
EDIT: gewoon de " || " veranderd door " && " en alles werkt :)
Hmm..
EDIT: gewoon de " || " veranderd door " && " en alles werkt :)
Gewijzigd op 01/01/1970 01:00:00 door Joshua




