Shoutbox adminfunktionen erstellen
-
Hallo,
ja benutzerverwaltung habe ich die soll in meine vorhandene seit eintergriert werden
also gäste können den chat nicht sehen der chat/shoutbox steht nur den eingeloggten zur verfügung
mfg
-
Nun gut, dann musst du das halt entsprechend anpassen.
Ich kann dir aber nur dringend noch einmal davon abraten, dir deine Seite so verhackstückelt zusammenzuklotzen. Lieber aus einem Guss und dann Stückweise nachbessern, als alle Komponenten einzeln bauen und dann zusammenzuführen. Zumindest am Anfang.Dann leg mal los!
-
Warum sollte das nachteilhaft sein?
also ich finde das das ok ist da ich weiss wo die komponennten alle hinkommen und ich weiss auch das das alles passt
mfg
-
derdefeckter schrieb:
[php]<?php
$dbresult = mysql_query("SELECT * FROM messages_count");[/code]
warst es nicht sogar du, dem ich gesagt hab, dass "SELECT *" in Produktivcode nichts zu suchen hat?
-
Hallo,
zwutz schrieb:
derdefeckter schrieb:
[php]<?php
$dbresult = mysql_query("SELECT * FROM messages_count");[/code]
warst es nicht sogar du, dem ich gesagt hab, dass "SELECT *" in Produktivcode nichts zu suchen hat?
Ich lese ,frage und beantworte täglich posts da weiss ich das jetzt nicht mehr
Wie müsste die Abfrage denn lauten?
mfg
-
So leute jetzt habe ich wirklich wieder ein Problem!
code:
<?php session_start(); ?> <?php if(!isset($_SESSION["username"])) { echo "Bitte erst <a href=\"index.php\">einloggen</a>"; exit; } else require ('config.php'); $username = $_SESSION["username"]; $abfrage = "SELECT username, userlevel FROM login WHERE username ='".mysql_real_escape_string($username)."' LIMIT 1"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); if($row['userlevel'] == 'admin') { echo 'Adminbereich folgt!'; } elseif($row['userlevel'] == 'moderator') { echo 'Der Moderatoren bereich folgt!'; } elseif($row['userlevel'] == 'user') { $abfrage = "SELECT username, chatbann FROM login WHERE username ='".mysql_real_escape_string($username)."' LIMIT 1"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); if($row['chatbann'] == '1') { $chat = 'Sie wurden vom Chat geblockt! Falls sie zu Unrecht geblockt wurden kontaktieren sie uns bitte!'; } elseif($row['chatbann'] == '0') { $chat = "<div id=\"asb_container\"> <div id=\"asb_contentwrap\"> <div id=\"asb_content\"> Shoutbox wird geladen ... </div> </div> <div id=\"asb_inputwrap\"> <div id=\"asb_input\"> <form action=\"\" name=\"frmshoutbox\" onsubmit=\"saveData(); return false;\"> <b><font color=\"#66FF00\">Nachricht:</font></b><br /><input class=\"text\" type=\"text\" name=\"txtmessage\" value=\"\" /><br /> <input class=\"button\" type=\"submit\" name=\"btnsend\" value=\"Senden\" /> </form> </div> </div> </div>"; } echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> <html xmlns=\"http://www.w3.org/1999/xhtml\"> <head> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" /> <link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" /> <link href=\"styles.css\" rel=\"stylesheet\" type=\"text/css\" /> <script type=\"text/javascript\" src=\"shoutbox.js\" ></script> <title>KIMSERVER-Game</title> </head> <body> <div id=\"container\"> <div id=\"header\"> <!--marquee--> </div> <div id=\"content\"> <div id=\"left\"> <div class=\"menu\"> <div class=\"menuheader\"><h3>Menu</h3></div> <div class=\"menucontent\"> <ul> <li><a href=\"gindex.php\">Start</a></li> <li><a href=\"ggame.php\">Zum Spiel</a></li> <li><a href=\"gscore.php\">Highscore</a></li> <li><a href=\"gbeta.php\">Open Beta</a></li> <li><a href=\"http://kimserver.bplaced.net/kimserver-game/kontakt.php\">Kontakt</a></li> <li><a href=\"gchat.php\">Chat</a></li> </ul> </div> <div class=\"menufooter\"></div> </div> <div class=\"menuheader\"><h3>Logout</h3></div> <div class=\"menucontent\"> <center> <p><a href=\"logout.php\">Logout</a></p> </center> </div> <div class=\"menufooter\"></div> </div> <div id=\"right\"> <div class=\"menu\"> <div class=\"menuheader\"><h3>Die besten:</h3></div> <div class=\"menucontent\">"; ?> <?php require ('config.php'); error_reporting(E_ALL); $abfrage = "SELECT username,score AS highscore FROM login ORDER BY score DESC LIMIT 0,3"; $end = mysql_query($abfrage); while( $row = mysql_fetch_assoc( $end )) { echo "<center>"; echo "<p>".$row['username'].":</p>"; echo "<p>".$row['highscore']."</p>"; echo "</center>"; } ?> <?php echo " <div class=\"clear\"></div> </div> <div class=\"menufooter\"></div> </div> </div> <div id=\"middle\"> <div class=\"post\"> <div class=\"postheader\"><h1>Chat</h1></div> <div class=\"postcontent\">"; ?> <?php echo "$chat"; ?> <?php echo "</div> <div class=\"postfooter\"></div> </div> <div class=\"post\"> </div> </div> </div> <div id=\"footer\"> <span>All rights reserved.</span> </div> </div> </body> </html>"; } ?>
Nicht aufregen falls irgendwie man das einfacher machen könnte!
zu meinem problem:Die js datei wurde in diesem thread schon gepostet
so wenn ich da jetzt was eintragen möchte denn möchte er das via get machen was nicht geht weil mit post abgefragt wird jetzt werden einige sagen das method noch da hin muss allerdings erledigt das die js datei!
ich habe genau die selben datein für meine index.html benutzt und da funktionierts einwandfrei (also nur shoutboxcode)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <title>ajax</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="styles.css" type="text/css" /> <script type="text/javascript" src="shoutbox.js" ></script> </head> <body> <div id="asb_container"> <div id="asb_contentwrap"> <div id="asb_content"> Shoutbox wird geladen ... </div> </div> <div id="asb_inputwrap"> <div id="asb_input"> <form action="" name="frmshoutbox" onsubmit="saveData(); return false;"> <b>Nachricht:</b><br /><input class="text" type="text" name="txtmessage" value="" /><br /> <input class="button" type="submit" name="btnsend" value="Senden" /> </form> </div> </div> </div> </body> </html>
hoffe ihr könnt mir da mal eben weiterhelfen mfg
-
derdefeckter schrieb:
...
fehlt da nicht in z. 10 ne { klammer
-
soweit ich gelernt habe
muss bei else keine klammer hinmfg
-
falsch gelernt! es muß nur keine klammer hin wenn danach nur ein statement folgt bei dir sind es aber mehr z.14 soll doch auch noch mindestens mit rein...
-
allerdings hatt das voher auch geklappt ohne die klammern
also auf meinen anderen seiten klappt das genau so
nur jetzt hier und ich denke das er die js datei nicht ricjtih mit rein nimmt
mfg
-
denk doch was du willst...
-
sicher? Kann ich grad nicht verstehen. Was man aber machen kann ist..
if ($foo == $bar): echo 'lustig lustig'; else: echo 'trotzdem lustig'; endif;
-
ja also es ist so ne sache es ist nicht direkt falsch aber nur solange das exit() da ist sobald einer auf die idee kommt das raus zu nehmen hast den fehler. also kann das für mich zu folge fehlern führen und sollte ausgebessert werden.
-
Hallo,
Zeile 10:
Bereits angesprochen. Entweder du setzt die Klammern, dann kannst du dir exit sparen, oder du lässt exit stehen und entfernst das else. Deine Variante verwirrt nur den Leser nur weil das else unsinnig ist.Zeile 12:
Kein Fehler, aber schöner wäre die Verwendung von require_once. Bei require_once wird geprüft ob die Datei bereits eingebunden ist. Wenn ja, wird sie kein zweites mal dazugeholt.Zeile 18/33:
Was ist wenn die Ergebnismengen leer sind? Erweitere den Code besser umif (!$row) exit;
Zeile 50:
<form action="" ...> verweist auf die im Verzeichnis liegende index-Datei und nicht zwangsläufig auf sich selbst. Soll das passieren, lass action="" weg, oder nutz $_SERVER['script_name'].Zeile 117/118:
Du machst den PHP-Tag zu um ihn direkt danach wieder zu öffnen. Wieso?2-3 kleine Anmerkungen und Fragen:
1. Wieso wechselst du zwischen mysql_fetch_array und mysql_fetch_assoc?
Wenn du sowieso nur auf die assoziativen Indizes zurückgreifst verwendet doch gleich mysql_fetch_assoc oder mysql_fetch_array($result, MYSQL_ASSOC).2. Nutzt du persitente Verbindungen? Wenn nicht, vermisse ich mysql_free_result um den Speicher wieder für neue Daten frei zu machen. Ein fehlendes mysql_free_result verursacht allerdings auch nur ein Warning im Log (sofern Warnings aktiviert sind)
3. Versuche nicht immer die gleichen Variablennamen zu verwenden. Bei der miesen Codeeinrückung erkennt man am Ende nicht mehr, welche du wann verwendest. Noch ist es überschaubar, aber spätestens bei deinem ersten 1000-Zeilen Script wird's kompliziert. Vor allem wächst dann auch die Gefahr, bereits bestehende Ergebnismengen zu überschreiben.
4. Versuch dich in Zukunft mal ein wenig mit MVC (Model-View-Controlling) auseinander zusetzen. Das Mischen von View und Controlling find ich persönlich grauenvoll.
LG
-
danke!,
für die hilfe bis jetzt.
allerdings läd er mir die shoutbox.js nicht! voran liegt das?
mfg
p.s. ich werden denn code nochmal komplett überarbeiten das else ist weg
-
Hallo,
möglicherweise liegt die shoutbox.js nicht im selben Verzeichnis.
Btw: Mach deinen Server sicher. Ich sag dir auch wieso:
Schleifunk-Ostseewelle
Auch auf diesem Server gibt es, bei den Server-Regeln, merkwürdige Einschränkungen, und basieren nicht auf den FRN-Regeln![...]
Es klingt nicht so als wäre es geheim, aber genauso schnell wie daran, kommt man auch an andere Dinge.
LG
-
Hallo,
Doch die shoutbox.js liegt im selben Verzeichnis ich kann sie sogar abrufen wenn ich direkt denn link oben eingebe
dann noch ne frage:
hmmz schrieb:
Hallo,
möglicherweise liegt die shoutbox.js nicht im selben Verzeichnis.
Btw: Mach deinen Server sicher. Ich sag dir auch wieso:
Schleifunk-Ostseewelle
Auch auf diesem Server gibt es, bei den Server-Regeln, merkwürdige Einschränkungen, und basieren nicht auf den FRN-Regeln![...]
Es klingt nicht so als wäre es geheim, aber genauso schnell wie daran, kommt man auch an andere Dinge.
LG
Und zwar wo wurde die Datei bzw die Sätze gefunden?
und wie? mir kommt die Datei bzw die Sätze nicht bekannt vorUnd wie kann ich denn Server sicherer machen
mfg
-
Hallo,
Und zwar wo wurde die Datei bzw die Sätze gefunden?
da!
und wie?
so!
Einfach mal eine leere index.php in den Stamm legen, oder die "startseite.php" die ja augenscheinlich vorhanden ist, als index eintragen (sofern du an die Config kommst).
Welchen Link gibst du wo ein um an die Script-Datei zu kommen? Laut deinem Code, müsste sie im selben Verzeichnis liegen, wie die Datei, die den gezeigten Code beinhaltet. Vorausgesetzt, die Datei mit dem gezeigten Code wird nicht irgendwo via include( oder require( eingebunden. Dann wäre der Pfad relativ zur einbindenden Datei.
LG
-
Danke für den Hinweis!
ich werde das nacher ändern werde jetzt erstmal schlafen gehen
mfg
-
derdefeckter schrieb:
Danke für den Hinweis!
ich werde das nacher ändern werde jetzt erstmal schlafen gehen
mfg
guten Tag.
ach, btw deine Signatur ist nicht richtig ^^