Add User Script Werkt Niet
wat denken jullie?
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
33
34
35
36
37
38
39
40
41
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
<?php
if(isset($_POST['submit'])){
include("database/connect.inc");
$user1 = $_POST['user'];
$pass1 = $_POST['pass'];
$pass1 = md5($pass1);
$email = $_POST['email'];
$birth = $_POST['birth'];
$city = $_POST['city'];
$brand = $_POST['brand'];
$type = $_POST['type'];
$gender = $_POST['gender'];
$result = mysql_query("INSERT INTO TNO (user,pass,email,birth,city,brand,type,gender) VALUES ('".$user1."','".$pass1.",'".$email."','".$birth."','".$city."','".$brand."','".$type."','".$gender."');");
if($result == 0){
echo 'The User Was Not Added,<br> Please Try Again!<br>';
}
else
{
echo 'You Where Succesfully Added To The Database!<br>';
}
}
else
{
echo '<div align="center">
<form action="" method="POST" enctype="text/plain" >
User Details<br><br>
User Account: <input type="text" size="10" name="user" />(15 characters max.)<br>
Password: <input type="password" size="10" name="pass" />(10 characters max.)<br>
Email: <input type="text" size="25" name="email" />(30 characters max.)<br><br>
City: <input type="text" size="10" name="city" />(25 characters max.)<br>
Date Of Birth: <input type="text" size="10" name="birth" />(**/**/**** in this format)<br>
Gender: <input type="text" size="10" name="gender" />(10 characters max.)<br><br>
Car Details<br><br>
Brand Of Car: <input type="text" size="20" name="brand" />(15 characters max.)<br>
Type Of Brand: <input type="text" size="25" name="type" />(25 characters max.)<br><br>
<input type="submit" value="Submit" name="submit" /><br>
</form>
</div>';
}
?>
if(isset($_POST['submit'])){
include("database/connect.inc");
$user1 = $_POST['user'];
$pass1 = $_POST['pass'];
$pass1 = md5($pass1);
$email = $_POST['email'];
$birth = $_POST['birth'];
$city = $_POST['city'];
$brand = $_POST['brand'];
$type = $_POST['type'];
$gender = $_POST['gender'];
$result = mysql_query("INSERT INTO TNO (user,pass,email,birth,city,brand,type,gender) VALUES ('".$user1."','".$pass1.",'".$email."','".$birth."','".$city."','".$brand."','".$type."','".$gender."');");
if($result == 0){
echo 'The User Was Not Added,<br> Please Try Again!<br>';
}
else
{
echo 'You Where Succesfully Added To The Database!<br>';
}
}
else
{
echo '<div align="center">
<form action="" method="POST" enctype="text/plain" >
User Details<br><br>
User Account: <input type="text" size="10" name="user" />(15 characters max.)<br>
Password: <input type="password" size="10" name="pass" />(10 characters max.)<br>
Email: <input type="text" size="25" name="email" />(30 characters max.)<br><br>
City: <input type="text" size="10" name="city" />(25 characters max.)<br>
Date Of Birth: <input type="text" size="10" name="birth" />(**/**/**** in this format)<br>
Gender: <input type="text" size="10" name="gender" />(10 characters max.)<br><br>
Car Details<br><br>
Brand Of Car: <input type="text" size="20" name="brand" />(15 characters max.)<br>
Type Of Brand: <input type="text" size="25" name="type" />(25 characters max.)<br><br>
<input type="submit" value="Submit" name="submit" /><br>
</form>
</div>';
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Jeroen
.
Plus ik denk: onveilig, want je include database connectie met .inc extensie, die ik kan opvragen op jouw server en waarschijnlijk als plain text kan uitlezen, plus ik denk dat md5 achterhaald is en je beter sha1 met een beetje salt kan gebruiken. Ik denk nog meer overigens, maar dat onthoud ik je maar even :P
Ik denk: je hebt geen action ingesteld bij je formulier. Gebruik de pagina naam zelf als action of Plus ik denk: onveilig, want je include database connectie met .inc extensie, die ik kan opvragen op jouw server en waarschijnlijk als plain text kan uitlezen, plus ik denk dat md5 achterhaald is en je beter sha1 met een beetje salt kan gebruiken. Ik denk nog meer overigens, maar dat onthoud ik je maar even :P
Gewijzigd op 01/01/1970 01:00:00 door Winston Smith
Cedric schreef op 23.05.2007 18:36:
Kan wel, alleen is $pass1 = md5($_POST['pass']); sneller :PIk zie da je 2 maal da var pass1 declareert. Eens van een form en de andere een md5... Dit kan dus niet hé.
de rest van de code weet ik alleen van dat het 100% werkt maar dit niet
ok ik denk dat het probleem in de if(isset($_POST['submit'])) zit want als ik daar bijv. 0==0 neerzet add hij de user wel :S
dus wat zou er dan kunnen zijn?
if($_SERVER['REQUEST_METHOD'] === 'POST') {
en:
if($result === false){
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
if($_SERVER['request_method'] == "POST")
{
[/code]
[edit]
Michel was ietsje sneller :P
[/edit]
if($_SERVER['request_method'] == "POST")
{
[/code]
[edit]
Michel was ietsje sneller :P
[/edit]
Gewijzigd op 01/01/1970 01:00:00 door Cedric
@Michel: waarom === en niet ==?
op php.net:
Quote:
Return Values
For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.
For other type of SQL statements, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.
For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.
For other type of SQL statements, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.
omdat je dus een FALSE (Boolean) krijgt bij een mislukte query en type checking het netste is... == zal dus ook werken, maar is minder strikt
0 === false (result false)
0 == false (result true)
Gewijzigd op 01/01/1970 01:00:00 door M Ypma