personal-message-systeem

Gesponsorde koppelingen

PHP script bestanden

  1. personal-message-systeem

« Lees de omschrijving en reacties

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
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
<?php
//Beste allemaal
//In het script ga ik er van uit dat je ingelogt bent met
//Een cookie de je username bevat.
//Je moet het script zelf maar beveiligen,
//er zijn heel veel scripts op het net geplaatst
//die daar voor dienen
//vergeet zeker dus het koekje met de naam ['naam'] niet !
//o ja,
//er staat geen ubb - parser op omdat ik tinymce gebruik.
//hier op php-hulp vind je er heel veel,
//dus die van mij heb je niet nodig
//een datum is niet opgegeven
//dat kun je misschien beter zelf doen
//als je ergens in je memberlijst een link wilt om een pm naar die persoon, dan kan dat als volgt :
//inbox.php?send=hierdeusername
/*
mysql-table

CREATE TABLE `pm` (
  `van` varchar(80) NOT NULL,
  `naar` varchar(80) NOT NULL,
  `inhoud` longtext NOT NULL,
  `onderwerp` varchar(800) NOT NULL,
  `id` int(255) unsigned NOT NULL auto_increment,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

*/
//error_reporting(0);
//geen errors !

$dbhost="localhost";
//je database host
$dbuser="";
//je database user
$dbpass="";
//je database pass
$db="";
//je database
$cruser="Bart Coene";
//onder wiens naam komt het copyright ?
$wmmail="[email protected]";
//naar wie moeten fouten gemeld worden ?
?>

<!--
Script
Bart Coene
April 06, 2007
09:04:44 AM
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
<title>
Pm - center
</title>
</head>
<body bgcolor="lightblue" link="red">
<?php
mysql_connect($dbbost,$dbuser,$dbpass);
//we maken connectie
mysql_select_db($db);
//selecteer hier de database
$read=$_GET['read'];
$send=$_GET['send'];
$do_send=$_GET['do_send'];
$verwijder=$_GET['verwijder'];
$verwijderen=$_GET['verwijderen'];
if(isset($verwijderen)){
    $select = "DELETE FROM pm WHERE id='".$verwijderen."' && naar='".$HTTP_COOKIE_VARS['naam']."'";
    mysql_query($select);
    //we kijken of het id mached met de naam, anders kan iedereen alle berichten verwijden
    $aantal_fouten=mysql_errno();
    if($aantal_fouten != 0){
        $fouten=mysql_error();
        echo '<font color="red">'.$fout.'</font>';
    }

    else {
        echo "Het bericht werd Succesvol verwijderd. <a href=\"inbox.php\">Ga naar de inbox !</a>";
    }

    //herinner je dit nog ? we gebruikten dit eerder
}
else {
if(isset($verwijder)){
    //als we op verwijderen hebben geklikt ;
    echo "Weet je zeker dat je wet bericht wilt verwijderen ?<br>";
    echo '<a href="inbox.php?verwijderen='.$verwijder.'">Ja</a>';
    echo '<br><a href="inbox.php">nee</a>';
    //even vragen of ze het echt willen
}
else {
if(isset($do_send)){
    //als do_send meegstuurt is met de link;
    //dan gaan we dat ingeven in de database hé

    $onderwerp=$_POST['onderwerp'];
    $ontvanger=$_POST['ontvanger'];
    $bericht=$_POST['bericht'];
    //we zetten onze geposte waardes om naar variablen
    $select = "INSERT INTO `pm` ( `van` , `naar` , `inhoud` , `onderwerp` ) VALUES ('".$HTTP_COOKIE_VARS['naam']."', '".$ontvanger."', '".$bericht."', '".$onderwerp."')";
    mysql_query($select);
    //en we voeren het query uit.
    //het kan altijd zijn dat we last hebben van errors.
    //we gaan dat controleren met de functie errno

    $aantal_fouten=mysql_errno();
    if($aantal_fouten != 0){
        $fouten=mysql_error();
        echo '<font color="red">'.$fout.'</font>';
    }

    else {
        echo "Het bericht werd Succesvol verstuurd. <a href=\"inbox.php\">Ga naar de inbox !</a>";
    }
}

else {
if(isset($send)){
    //zendsysteem
    echo '<form action="inbox.php?do_send" method="post">';
    //het formulier openen.
    //voor de ontvanger, die mee kan zijn gegven met de link, doe we dit :

    if($send == ''){
        //als $send leeg is
        echo 'Ontvanger :<br>';
        echo '<input type="text" name="ontvanger"><br>';
        //is er geen ontvanger opgegeven.
    }
    else {
        //als er wel een is opgegeven
        echo 'Ontvanger :<br>';
        echo '<input type="text" name="ontvanger" value="'.$send.'"><br>';
        //dan vullen we het vakje automatisch in.
    }
    echo 'Onderwerp :<br>';
    echo '<input type="text" name="onderwerp"><br>';
    //het onderwerp ingeven
    echo 'Bericht :<br>';
    echo '<textarea name="bericht" cols="50" rows="20"></textarea><br>';
    //het bericht, als je een het oorspronkelijke bericht hebt meegestuurd dan zet je dat tussen te twee textarea tags.
    //erg groot textarea, juiste groote voor een WYSIWYG

    echo '<input type="submit" value="verzenden">';
    echo '</form>';
    //de submit knop
}
else{
if(isset($read)){
    //readsysteem
    $query=mysql_query("SELECT * FROM pm WHERE id='".$_GET['read']."' && naar='".$HTTP_COOKIE_VARS['naam']."'");
    //we willen het veilig houden voor onze clienten, we willen niet dat hun privacy niet schenden, als het id vervangen wordt krijgen ze het niet te zien.
    echo "<table border=\"1\" width=\"100%\">";
    while($data = mysql_fetch_array($query)){
    //hoewel het maar een keer mogenlijk is, omdat de id uniek is maken we een array om de foutmeldingen te vermijden
        echo "<tr><td><h2><center>".$data['onderwerp']."</center></h2></td></tr>";
        echo "<tr><td><p><center>".$data['inhoud']."</center></p><br><br></td></tr>";
        //we kunnen het bericht lezen.
        //we maken een GET link om een pm terug te zenden :

        echo "<a href=\"inbox.php?send=".$data['van']."\">Zend een bericht terug</a><br>";
        echo '<a href="inbox.php">Terug naar de inbox !</a>';
        //de get link data bevat nu de afzender (kun je ook met post doen, maak een input hidden als je de link te lang vind)
    }
}

else {
//selecteer hier de database
$query=mysql_query("SELECT * FROM pm WHERE naar='".$HTTP_COOKIE_VARS['naam']."' ORDER By id DESC");
//ons query, selecteer het in omgekeerde volgorde
echo "<a href=\"inbox.php?send\">verstuur een bericht</a>";
echo '<table border="1" width="100%">';
//open de tabel
echo "<tr><td width=\"65%\"><b>Onderwerp</b></td><td width=\"25%\"><b>Van</b></td><td bgcolor=\"orange\" width=\"10%\"><b>Verwijder</b></a></td></tr>";
//een regel ter verduidelijking van de vakjes
while($data = mysql_fetch_array($query)){
//zolang er elementen in onze array data zitten ...    
    echo "<tr><td><a href=\"inbox.php?read=".$data['id']."\">".$data['onderwerp']."</a></td><td>".$data['van']."</td><td><a href=\"inbox.php?verwijder=".$data['id']."\" >Verwijder</a></td></tr>";
    //zeg : onderwerp ; van
}
//while sluiten
echo "</table>";
//tabel sluiten
}
//else sluiten (read)
}
//we sluiten send (else)
}
//we sluiten  do_send
}
//we sluiten verwijder (else)
}
//we sluiten verwijderen (else)
mysql_close();
//mysql sluiten
echo "\n";
//we willen onze broncode goed leesbaar maken, daarom een \newline
?>

<!--
Ons copyright zetten we hier, onder jou naam :
-->
<center>
<br><br><br>
<table border="3" width="75%">
<?php
echo "<table border=\"3\" width=\"75%\">";
//we openen de tabel
$jaar=date("Y");
//we kijken in welk jaar we zijn,
//de grote Y staat voor een jaartal in 4 cijfers, bv. 2003

$vandaag=date("j F Y");
//we kijken welke dag we vandaag zijn,
// j F Y staat voor : dag zonder nul er voor, maand in lange notatie, jaartal in 4 cijfers

$eerstejaar="2007";
//2007 is het eerste jaar dat we dit script gebruiken.
if($jaar==$eerstejaar){
//als het jaar 2007 en zeven is moet er gewoon 2007 komen, niet 2007-2007
    echo "<tr><td><center>";
    echo "Copyright&copy; ".$cruser." ".$eerstejaar." <br>".$vandaag."";
    echo "</center></td></tr>";
        //we zorgen dat er mooi geprint wordt, mat jaartal 2007
}
else {
//als het jaartal niet 2007 is, moet het huidige jaar er bij :
    echo "<tr><td><center>";
    echo "Copyright&copy; ".$cruser." 2007-".$jaar." <br>".$vandaag."";
    echo "</center></td></tr>";    
        //en we printen het mooi
}
echo "</table>";
//we sluiten de tabel
echo "in geval van fouten, e-mail de webmaster ".$wmmail;
?>

</table>
</center>
</body>
</html>
<?php
?>

 
 

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.