Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
PHP-Chat
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
BA_SST
PHP-Chat
Commits
f01af582
Commit
f01af582
authored
Aug 29, 2016
by
Nico Schallehn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Einige kommentare hinzugefügt
parent
4e65eac5
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
95 additions
and
116 deletions
+95
-116
admin.php
admin.php
+0
-3
cron.php
cron.php
+5
-1
index.php
index.php
+54
-72
send.php
send.php
+5
-13
update.php
update.php
+31
-27
No files found.
admin.php
View file @
f01af582
...
...
@@ -18,12 +18,9 @@
</head>
<body>
<div
class=
"container-fluid"
>
<?php
$result
=
mysql_query
(
"SELECT * FROM user WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$users
=
mysql_fetch_array
(
$result
);
if
(
!
isset
(
$_SESSION
[
'chatuserid'
])
OR
$users
[
'online'
]
==
0
)
echo
"Erst anmelden..."
;
else
{
...
...
cron.php
View file @
f01af582
<?php
include
(
"config.php"
);
<?php
/**
* Diese Datei kümmert sich um das automatische Abmelden der Benutzer, die nur das Browserfenster geschlossen haben.
*/
include
(
"config.php"
);
$result
=
mysql_query
(
"SELECT id, name FROM user WHERE refresh_time < '"
.
(
time
()
-
60
)
.
"' AND online = '1'"
);
$text
=
offtimeout
();
$counter
=
0
;
...
...
index.php
View file @
f01af582
<?php
// Weiterleitung auf HTTPS
:
if
(
empty
(
$_SERVER
[
'HTTPS'
])
||
$_SERVER
[
'HTTPS'
]
==
"off"
){
// Weiterleitung auf HTTPS
, falls es noch nicht HTTPS ist.
if
(
empty
(
$_SERVER
[
'HTTPS'
])
||
$_SERVER
[
'HTTPS'
]
==
"off"
){
$redirect
=
'https://'
.
$_SERVER
[
'HTTP_HOST'
]
.
$_SERVER
[
'REQUEST_URI'
];
header
(
'HTTP/1.1 301 Moved Permanently'
);
header
(
'Location: '
.
$redirect
);
exit
();
}
include
(
"config.php"
);
}
// Konfiguration und verschiedene Funktionen einbinden.
include
(
"config.php"
);
// Falls ein Formular übermittelt wurde:
if
(
isset
(
$_POST
[
'ok'
]))
{
if
(
isset
(
$_POST
[
'ok'
])){
// ... sich ein Benutzer anmelden möchte...
if
(
$_POST
[
'ok'
]
==
"Anmelden"
){
$username
=
htmlentities
(
$_POST
[
'username'
]);
$passwort
=
htmlentities
(
$_POST
[
'pass'
]);
if
(
$username
==
""
OR
$passwort
==
""
){
if
(
$username
==
""
OR
$passwort
==
""
){
// Fehler wenn Benutzername oder Passwort leer ist...
$meldung
=
"<font color=
\"
red
\"
>Name oder Password Fehlt!</font>"
;
$JqueryDo
=
"$('#showLogin').click();"
;
}
else
{
else
{
$result
=
mysql_query
(
"SELECT id, pass, name, chat FROM user WHERE name = '
$username
'"
);
$user
=
mysql_fetch_array
(
$result
);
if
(
$user
[
'pass'
]
==
hash
(
"sha256"
,
$passwort
))
// )
{
$_SESSION
[
'chatuserid'
]
=
$user
[
'id'
];
if
(
$user
[
'pass'
]
==
hash
(
"sha256"
,
$passwort
)){
// Prüfung ob PW richtig ist
$_SESSION
[
'chatuserid'
]
=
$user
[
'id'
];
// UserID und Username in einer Session Speichern
$_SESSION
[
'name'
]
=
$user
[
'name'
];
mysql_query
(
"UPDATE user SET online = '1', refresh_time = "
.
time
()
.
" WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
mysql_query
(
"INSERT INTO chat (nachricht, user_id, userchange, hideuser, chat_time) VALUES ('<b>
{
$user
[
'name'
]
}
</b> betritt den Chat', '
{
$_SESSION
[
'chatuserid'
]
}
', '1', '1', '"
.
time
()
.
"')"
);
$meldung
.=
"<font color=
\"
green
\"
>Du hast dich erfolgreich angemeldet!</font>"
;
$JqueryDo
=
"$('#showLogin').click();"
.
PHP_EOL
.
"setTimeout(function(){ window.location =
\"
/chat.php
\"
; }, 700);"
;
if
(
$user
[
'chat'
]
==
0
)
// Wenn sich der Benutzer das erste mal anmedet, dann bekommt er die Hilfe angezeigt.
{
if
(
$user
[
'chat'
]
==
0
){
// Wenn sich der Benutzer das erste mal anmedet, dann bekommt er die Hilfe angezeigt.
ChatNachricht
(
"/?"
,
0
,
0
);
}
}
else
{
$meldung
.=
"<font color=
\"
red
\"
>Name (
$username
) oder Passwort falsch!</font>"
;
...
...
@@ -43,9 +38,7 @@ if(isset($_POST['ok']))
}
}
}
else
if
(
$_POST
[
'ok'
]
==
"Registrieren"
)
{
//var_dump($_POST);
else
if
(
$_POST
[
'ok'
]
==
"Registrieren"
){
// .. sich der Benutzer registieren möchte...
$result
=
mysql_query
(
"SELECT COUNT(*) AS anz FROM user WHERE name = '
{
$_POST
[
'username'
]
}
'"
);
$user
=
mysql_fetch_array
(
$result
);
if
(
$user
[
'anz'
]
==
0
AND
$_POST
[
'username'
]
!=
""
AND
$_POST
[
'pass'
]
!=
""
){
...
...
@@ -54,24 +47,19 @@ if(isset($_POST['ok']))
$_POST
[
'pass'
]
=
hash
(
"sha256"
,
htmlentities
(
$_POST
[
'pass'
]));
mysql_query
(
"INSERT INTO user (name, pass) VALUES ('
{
$_POST
[
'username'
]
}
', '
{
$_POST
[
'pass'
]
}
')"
);
mysql_query
(
"INSERT INTO chat (nachricht, user_id, userchange, hideuser, chat_time) VALUES ('<b>
{
$_POST
[
'username'
]
}
</b> hat sich registriert', '
{
$_SESSION
[
'chatuserid'
]
}
', '1', '1', '"
.
time
()
.
"')"
);
AdminLogAdd
(
"
{
$_POST
[
'username'
]
}
hat sich registiert!"
,
$_SESSION
[
'chatuserid'
],
0
);
$meldung
=
'<font color="green">Du hast dich erfolgreich registriert!</font><br>'
;
$JqueryDo
=
"$('#showRegis').click();"
.
PHP_EOL
.
"setTimeout(function(){ $('#showLogin').click(); }, 1000);"
;
}
else
{
if
(
$user
[
'anz'
]
!=
0
)
$meldung
=
'<font color="red">Name existiert bereits!</font><br>'
;
else
$meldung
=
'<font color="red">Name oder Passwort fehlt oder ist ungltig!</font><br>'
;
$JqueryDo
=
"$('#showRegis').click();"
;
}
}
}
}
// Aufbau der Verschiedenen Seiten:
if
(
$_GET
[
"action"
]
==
"impressum"
){
if
(
$_GET
[
"action"
]
==
"impressum"
){
// Aufbau und Inhalt der Seite Impressum:
$content
=
'<div class="page-header">
<h1>Impressum</h1>
</div>
...
...
@@ -81,7 +69,7 @@ if($_GET["action"] == "impressum"){
Entwickler: Markus B., Markus T., Stanley S., Nico S.
</div>
</div>'
;
}
else
if
(
isset
(
$_GET
[
"action"
])){
}
else
if
(
isset
(
$_GET
[
"action"
])){
// 404 Seite falls irgendeine unbekannte Seite angefordert wurde
$content
=
'<div class="page-header">
<h1>404 Not Found</h1>
</div>
...
...
@@ -103,6 +91,7 @@ if($_GET["action"] == "impressum"){
</div>'
;
}
// Ab hier das HTML5 Grundgerüst in welchen die verschiedenen Ausgaben ausgegeben werden.
?>
<!DOCTYPE html>
<html>
...
...
@@ -138,18 +127,12 @@ if($_GET["action"] == "impressum"){
<ul
class=
"nav navbar-nav"
>
<li
<?php
echo
(
!
isset
(
$_GET
[
'action'
])
?
'class="active"'
:
''
);
?>
><a
href=
"
<?php
echo
$_SERVER
[
'SCRIPT_NAME'
];
?>
"
><span
class=
"glyphicon glyphicon-home"
/></a></li>
<li
<?php
echo
(
$_GET
[
'action'
]
==
"impressum"
?
'class="active"'
:
''
);
?>
><a
href=
"
<?php
echo
$_SERVER
[
'SCRIPT_NAME'
];
?>
?action=impressum"
>
Impressum
</a></li>
<!-- <li><a href="#">Link2</a></li>
<li><a href="#">Link3</a></li>
<li><a href="#">Link4</a></li> -->
</ul>
<ul
class=
"nav navbar-nav navbar-right"
>
<li
id=
"LoginBtn"
><a
href=
"#"
id=
"showLogin"
><span
class=
"glyphicon glyphicon-log-in"
></span>
Anmelden
</a></li>
<li
id=
"RegisBtn"
><a
href=
"#"
id=
"showRegis"
><span
class=
"glyphicon glyphicon-plus-sign"
></span>
Registieren
</a></li>
</ul>
</div>
</div>
</nav>
<div
class=
"row"
>
...
...
@@ -207,7 +190,6 @@ if($_GET["action"] == "impressum"){
</div>
</div>
</div>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script
src=
"https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"
></script>
<!-- Latest compiled and minified JavaScript -->
...
...
send.php
View file @
f01af582
<?php
include
(
"config.php"
);
<?php
/**
* Diese Datei nimmt die vom Benutzer gesendeten Nachrichten entgegen und speichert sie in der Datenbank.
*/
include
(
"config.php"
);
$result
=
mysql_query
(
"SELECT * FROM user WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$users
=
mysql_fetch_array
(
$result
);
var_dump
(
$_POST
);
...
...
@@ -16,34 +20,22 @@ else{
else
$id
=
0
;
ChatNachricht
(
$_POST
[
'text'
],
0
,
0
);
echo
"OK"
;
//$nachricht = nachrichtausgabe(0, 0, $id, $users['name'], time(), ChatNachricht($_POST['text'], 0, 0),"0");
//echo "<script>parent.chat.add('$nachricht');</script>";
}
}
else
if
(
isset
(
$_POST
[
'modok'
])
AND
$users
[
'admin'
]
>=
1
)
{
if
(
$_POST
[
'text'
]
!=
""
)
{
ChatNachricht
(
$_POST
[
'text'
],
1
,
0
);
echo
"OK"
;
//$nachricht = nachrichtausgabe(0, 1, 0, $users['name'], time(), ChatNachricht($_POST['text'], 1, 0),"");
//echo "<script>parent.chat.add('$nachricht');</script>";
}
}
else
if
(
isset
(
$_POST
[
'adminok'
])
AND
$users
[
'admin'
]
>=
2
)
{
if
(
$_POST
[
'text'
]
!=
""
)
{
ChatNachricht
(
$_POST
[
'text'
],
2
,
0
);
echo
"OK"
;
//$nachricht = nachrichtausgabe(0, 2, 0, $users['name'], time(), ChatNachricht($_POST['text'], 2, 0),"");
//echo "<script>parent.chat.add('$nachricht');</script>";
}
}
else
{
echo
"Fehler"
;
}
/*if(isset($_POST['specialok']) AND $users['admin'] >= 3) {
if($_POST['text'] != "") {
$nachricht = nachrichtausgabe(0, 3, 0, $users['name'], time(), ChatNachricht($_POST['text'], 3, 0),"");
echo "<script>parent.chat.add('$nachricht');</script>";
}
}*/
}
?>
\ No newline at end of file
update.php
View file @
f01af582
<?php
include
(
"config.php"
);
$result
=
mysql_query
(
"SELECT chat, online FROM user WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$users
=
mysql_fetch_array
(
$result
);
if
(
isset
(
$_SESSION
[
'chatuserid'
])
AND
$users
[
'online'
]
==
1
)
{
<?php
/**
* Diese Datei wird vom Webbrowser gepollt und übermittelt die neuen Chatnarichten und die Liste der Benutzer die online sind.
*/
// Konfig und Funktionen einbinden
include
(
"config.php"
);
$result
=
mysql_query
(
"SELECT chat, online FROM user WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$users
=
mysql_fetch_array
(
$result
);
if
(
isset
(
$_SESSION
[
'chatuserid'
])
AND
$users
[
'online'
]
==
1
)
{
// Logoff Timeout zurücksetzen
mysql_query
(
"UPDATE user SET refresh_time = '"
.
time
()
.
"' WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$array
=
array
();
...
...
@@ -13,10 +20,7 @@ if(isset($_SESSION['chatuserid']) AND $users['online'] == 1)
{
if
(
$chat
[
'hidden'
]
!=
1
)
$nachricht
.=
MessageFormat
(
$chat
[
'hideuser'
],
$chat
[
'admin'
],
$chat
[
'privat'
],
$chat
[
'name'
],
$chat
[
'chat_time'
],
$chat
[
'nachricht'
],
$chat
[
'name'
]
);
//echo "<br>".$chat['hideuser']."<br>".$chat['admin']."<br>".$chat['privat']."<br>".$chat['name']."<br>".$chat['chat_time']."<br>".$chat['nachricht'];
$chatid
=
$chat
[
'id'
];
//if($chat['userchange'] == 1) $userreload = 1;
//if($chat['userchange'] == 2) $userreload = 2;
}
if
(
isset
(
$chatid
))
mysql_query
(
"UPDATE user SET chat = '
$chatid
' WHERE id = '
{
$_SESSION
[
'chatuserid'
]
}
'"
);
$array
[
'newMessages'
]
=
$nachricht
;
...
...
@@ -26,5 +30,5 @@ if(isset($_SESSION['chatuserid']) AND $users['online'] == 1)
$array
[
'UsersTable'
]
=
UserTable
(
true
);
echo
json_encode
(
$array
,
JSON_PRETTY_PRINT
);
}
}
?>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment