Php Kijken of de gebruikersnaam al bestaad.
Ik ben bezig met een login/registreer pagina.
Ik wil kijken of de gebruikersnaam al bestaad.
maar ik krijg deze twee foutmeldingen:
Notice: Undefined variable: username in C:\xampp\htdocs\Website\form.php on line 14
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\Website\form.php on line 78
Kan iemand me daar mee helpen?
hier is mijn PHP script:
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php
session_start();
$_SESSION['message'] = '';
$mysqli = new mysqli('localhost', 'root', 'Jordi1996', 'accounts');
$query = mysql_query("INSERT * FROM user WHERE username ='$username'");
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if($_POST['password'] == $_POST['confirmpassword'])
{
$username = $mysqli->real_escape_string($_POST['username']);
$email = $mysqli->real_escape_string($_POST['email']);
$password = md5($_POST['password']);
$avatar_path = $mysqli->real_escape_string('PicturesUsers/'.$_FILES['avatar']['name']);
if (preg_match("!image!",$_FILES['avatar']['type'])) {
if (copy($_FILES['avatar']['tmp_name'], $avatar_path)){
$_SESSION['username'] = $username;
$_SESSION['avatar'] = $avatar_path;
$sql =
"INSERT INTO users (username, email, password, avatar) "
. "VALUES ('$username', '$email', '$password', '$avatar_path')";
if ($mysqli->query($sql) === true)
{
$_SESSION['message'] = "Registartie gelukt! "
. "$username toegevoegd!";
header("location: welcome.php");
}
else {
$_SESSION['message'] = 'Gebruiker kon niet worden toegevoegd!';
}
$mysqli->close();
}
else {
$_SESSION['message'] = 'Afbeelding uploaden niet gelukt!';
}
}
else {
$_SESSION['message'] = 'Gebruikt A.U.B alleen GIF, JPG of PNG afbeeldingen!';
}
}
else {
$_SESSION['message'] = 'De wachtwoorden komen niet overheen!';
}
}
if(mysql_num_rows($query) > 0){
sql === true;
}
else{
$_SESSION['message'] = 'Gebruiker bestaad al!';
}
?>
<link href="//db.onlinewebfonts.com/c/a4e256ed67403c6ad5d43937ed48a77b?family=Core+Sans+N+W01+35+Light" rel="stylesheet"/>
<link rel="stylesheet" href="form.css">
<div class="body-content">
<div class="module">
<h1>Maak een account</h1>
<form class="form" action="form.php" method="post" enctype="multipart/form-data" autocomplete="off">
<div class="alert alert-error"> <?= $_SESSION['message'] ?> </div>
<input type="text" placeholder="Gebruikersnaam" name="username" required />
<input type="email" placeholder="Email" name="email" required />
<input type="password" placeholder="Wachtwoord" name="password" autocomplete="new-password" required />
<input type="password" placeholder="Wachtwoord" name="confirmpassword" autocomplete="new-password" required />
<div class="avatar"><label>Selecteer je profiel foto: </label><input type="file" name="avatar" accept="image/*" required /></div>
<input type="checkbox" name="conditions" required>ik ga akkoord met de <a href="#"> algemene woorwaarden </a> <br>
<input type="submit" value="Maak account" name="register" class="btn btn-block btn-primary" />
</form>
</div>
</div>
</div>
</body>
</html>
<html>
<head>
<title></title>
</head>
<body>
<?php
session_start();
$_SESSION['message'] = '';
$mysqli = new mysqli('localhost', 'root', 'Jordi1996', 'accounts');
$query = mysql_query("INSERT * FROM user WHERE username ='$username'");
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if($_POST['password'] == $_POST['confirmpassword'])
{
$username = $mysqli->real_escape_string($_POST['username']);
$email = $mysqli->real_escape_string($_POST['email']);
$password = md5($_POST['password']);
$avatar_path = $mysqli->real_escape_string('PicturesUsers/'.$_FILES['avatar']['name']);
if (preg_match("!image!",$_FILES['avatar']['type'])) {
if (copy($_FILES['avatar']['tmp_name'], $avatar_path)){
$_SESSION['username'] = $username;
$_SESSION['avatar'] = $avatar_path;
$sql =
"INSERT INTO users (username, email, password, avatar) "
. "VALUES ('$username', '$email', '$password', '$avatar_path')";
if ($mysqli->query($sql) === true)
{
$_SESSION['message'] = "Registartie gelukt! "
. "$username toegevoegd!";
header("location: welcome.php");
}
else {
$_SESSION['message'] = 'Gebruiker kon niet worden toegevoegd!';
}
$mysqli->close();
}
else {
$_SESSION['message'] = 'Afbeelding uploaden niet gelukt!';
}
}
else {
$_SESSION['message'] = 'Gebruikt A.U.B alleen GIF, JPG of PNG afbeeldingen!';
}
}
else {
$_SESSION['message'] = 'De wachtwoorden komen niet overheen!';
}
}
if(mysql_num_rows($query) > 0){
sql === true;
}
else{
$_SESSION['message'] = 'Gebruiker bestaad al!';
}
?>
<link href="//db.onlinewebfonts.com/c/a4e256ed67403c6ad5d43937ed48a77b?family=Core+Sans+N+W01+35+Light" rel="stylesheet"/>
<link rel="stylesheet" href="form.css">
<div class="body-content">
<div class="module">
<h1>Maak een account</h1>
<form class="form" action="form.php" method="post" enctype="multipart/form-data" autocomplete="off">
<div class="alert alert-error"> <?= $_SESSION['message'] ?> </div>
<input type="text" placeholder="Gebruikersnaam" name="username" required />
<input type="email" placeholder="Email" name="email" required />
<input type="password" placeholder="Wachtwoord" name="password" autocomplete="new-password" required />
<input type="password" placeholder="Wachtwoord" name="confirmpassword" autocomplete="new-password" required />
<div class="avatar"><label>Selecteer je profiel foto: </label><input type="file" name="avatar" accept="image/*" required /></div>
<input type="checkbox" name="conditions" required>ik ga akkoord met de <a href="#"> algemene woorwaarden </a> <br>
<input type="submit" value="Maak account" name="register" class="btn btn-block btn-primary" />
</form>
</div>
</div>
</div>
</body>
</html>
Gewijzigd op 19/02/2017 13:53:38 door - Ariën -
Gebruik dus..
$result = $mysqli->query(....)
en
$result->num_rows
Gewijzigd op 19/02/2017 13:39:05 door - Ariën -
Ariën, dank je wel het werkt nu wel goed!
Fijn dat het werkt. Ik heb net even code-tags om je script gezet. Gelieve dit voortaan zelf te doen. Zie ook de Veelgestelde Vragen.