UPDATE Probleem!
Ik ben in deze vakantie begonnen met het maken van een chatsite. Het is niet echt de bedoeling dat het wordt gebruikt, maar het staat gewoon mooi in mijn portfolio en zo kan ik zelf mijn php kennis op de proef stellen. (Ik ben namelijk nog niet zo lang geleden begonnen met PHP).
Het resultaat na 2 slapeloze nachten is hier te zien:
tijheu.freehostia.com
Inloggen met:
cyclonenl
password
Het inloggen werkt momenteel prima en het uitnodigen ook. Alleen het wijzigen van een profiel lukt niet... Je kan het profiel wijzigen door naar het persoonlijk profiel te gaan en dan op wijzig te klikken.
De functie wijzig profiel luid als volgt:
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
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
<?php
function wijzig_profiel(){
if (!($_SESSION['logged'])){
echo "U moet ingelogd zijn om dit deel van de website te bekijken!";
} else {
$ID = $_GET['id'];
$SESID = $_SESSION['ID'];
if(!($ID == $SESID )) {
echo "U moet eigenaar van deze account zijn om hem te bewerken!";
} else {
if (isset($_POST['submit'])){
if(empty($_POST['username'])){
echo "Geen gebruikersnaam ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['email'])){
echo "Geen email-adres ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['msn'])){
echo "Geen msn ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['eigentekst'])){
echo "Geen eigen tekst ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['signature'])){
echo "Geen signature ingevult!";
$probleem = "TRUE";
}
if ($probleem){
echo "<b>Probeer het opnieuw!</b><br>";
exit;
}
$username = $_POST['username'];
$password = md5($_POST['password']);
$email = $_POST['email'];
$msn = $_POST['msn'];
$eigentekst = $_POST['eigentekst'];
$signature = $_POST['signature'];
$id = $_GET['id'];
$sqlu = "UPDATE gebruikers SET username=$username , password=$password , email=$email , msn=$msn , eigentekst=$eigentekst , signature=$signature WHERE id=$id" or die (mysql_error());
$results=mysql_query($sqlu);
$num = mysql_affected_rows();
if(mysql_affected_rows() == 1) {
echo "Uw profiel is succesvol bijgewerkt met de volgende gegevens:<br />
Gebruikersnaam:<b> $username</b><br>
MSN-Adres: <b>$msn</b><br>
Email-Adres:<b> $email</b><br>
Signature: <br>
<b>$signature</b><br>
Eigen tekst:<br>
<b>$eigentekst</b><br>
";
} else {
echo "ERROR! De query was: $sqlu <br> Affected rows: $num";
}
} else {
$sql_events = mysql_query("SELECT * FROM gebruikers WHERE ID = $ID") or die (mysql_error());
while ($row = mysql_fetch_array($sql_events)) {
$username = $row["username"];
$email = $row["email"];
$msn = $row["msn"];
$eigen_tekst = $row["eigentekst"];
$signature = $row["signature"];
$uitnodigingen = $row["uitnodigingen"];
?>
<form name="form1" method="post" action="wijzig.php?id=<? echo "$ID"; ?>">
<p>Gebruikersnaam:
<input type="text" name="username" value="<? echo "$username";?>">
<br>
Wachtwoord:
<input type="password" name="password" value="<? echo "$password";?>">
<br>
Email adres:
<input type="text" name="email" value="<? echo "$email";?>">
<br>
MSN:
<input type="text" name="msn" value="<? echo "$msn";?>">
<br>
<br>
Eigen tekst:
<textarea name="eigentekst" cols="30" rows="7"><? echo "$eigen_tekst";?></textarea>
<br>
Signature:
<textarea name="signature" cols="30" rows="7"><? echo "$signature";?></textarea>
<br>
<input name="submit" type="submit" id="submit" value="Wijzig!">
</p>
</form>
<?
}
}
}
}
}
?>
function wijzig_profiel(){
if (!($_SESSION['logged'])){
echo "U moet ingelogd zijn om dit deel van de website te bekijken!";
} else {
$ID = $_GET['id'];
$SESID = $_SESSION['ID'];
if(!($ID == $SESID )) {
echo "U moet eigenaar van deze account zijn om hem te bewerken!";
} else {
if (isset($_POST['submit'])){
if(empty($_POST['username'])){
echo "Geen gebruikersnaam ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['email'])){
echo "Geen email-adres ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['msn'])){
echo "Geen msn ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['eigentekst'])){
echo "Geen eigen tekst ingevult!";
$probleem = "TRUE";
}
if(empty($_POST['signature'])){
echo "Geen signature ingevult!";
$probleem = "TRUE";
}
if ($probleem){
echo "<b>Probeer het opnieuw!</b><br>";
exit;
}
$username = $_POST['username'];
$password = md5($_POST['password']);
$email = $_POST['email'];
$msn = $_POST['msn'];
$eigentekst = $_POST['eigentekst'];
$signature = $_POST['signature'];
$id = $_GET['id'];
$sqlu = "UPDATE gebruikers SET username=$username , password=$password , email=$email , msn=$msn , eigentekst=$eigentekst , signature=$signature WHERE id=$id" or die (mysql_error());
$results=mysql_query($sqlu);
$num = mysql_affected_rows();
if(mysql_affected_rows() == 1) {
echo "Uw profiel is succesvol bijgewerkt met de volgende gegevens:<br />
Gebruikersnaam:<b> $username</b><br>
MSN-Adres: <b>$msn</b><br>
Email-Adres:<b> $email</b><br>
Signature: <br>
<b>$signature</b><br>
Eigen tekst:<br>
<b>$eigentekst</b><br>
";
} else {
echo "ERROR! De query was: $sqlu <br> Affected rows: $num";
}
} else {
$sql_events = mysql_query("SELECT * FROM gebruikers WHERE ID = $ID") or die (mysql_error());
while ($row = mysql_fetch_array($sql_events)) {
$username = $row["username"];
$email = $row["email"];
$msn = $row["msn"];
$eigen_tekst = $row["eigentekst"];
$signature = $row["signature"];
$uitnodigingen = $row["uitnodigingen"];
?>
<form name="form1" method="post" action="wijzig.php?id=<? echo "$ID"; ?>">
<p>Gebruikersnaam:
<input type="text" name="username" value="<? echo "$username";?>">
<br>
Wachtwoord:
<input type="password" name="password" value="<? echo "$password";?>">
<br>
Email adres:
<input type="text" name="email" value="<? echo "$email";?>">
<br>
MSN:
<input type="text" name="msn" value="<? echo "$msn";?>">
<br>
<br>
Eigen tekst:
<textarea name="eigentekst" cols="30" rows="7"><? echo "$eigen_tekst";?></textarea>
<br>
Signature:
<textarea name="signature" cols="30" rows="7"><? echo "$signature";?></textarea>
<br>
<input name="submit" type="submit" id="submit" value="Wijzig!">
</p>
</form>
<?
}
}
}
}
}
?>
Het script moet de huidige gegevens overschrijven met de nieuwe gegevens, ingevoerd via het formulier.
Ik heb de mysql.net handleiding erover gelezen en volgens mij gebruik ik de juiste syntax.
Ik hoop dat jullie eruit komen,
CyCloneNL
Gewijzigd op 01/01/1970 01:00:00 door Cyclone
Yay! Het is gelukt. Bedankt tim, dit gebeurt mij zooo vaak. Code van 108 regels php en 1 regel mysql en bij die ene krijg ik problemen!
graag gedaan ;)