ich habe mir einen eigenen Anmeldeskript für einen Gameserver (Minecraft mit Authme) programmiert.
Diesen habe ich jetzt in Ilch integriert bekommen.
Jedoch soll jeder Nutzer diese Seite nur einmal öffnen können.
Wenn er sie erneut öffnet, soll nur eine Naricht angezeigt werden. (z.B. Du bist bereits freigeschalten.)
Dies möchte ich machen, damit der Skript nicht missbraucht wird, da der Forumaccount bei unserem Server Pflicht ist.
Ich weis, ist nicht gerade Spieleranziehend, aber die Serverleitung will das so.
Nun meine Frage, wie kann ich nun den aktuell angemeldeten User herausfinden und dies in meinen Skript integrieren?
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 | <?php defined ( 'main' ) or die ( 'no direct access' ); $um = $menu ->get(1); if ( $menu ->getA(1) == 'W' ) { $poll_id = escape ( $menu ->getE(1), 'integer' ); $radio = escape ( $_POST [ 'radio' ], 'integer' ); $fraRow = db_fetch_object(db_query( "SELECT * FROM prefix_poll WHERE poll_id = '" . $poll_id . "'" )); $textAr = explode ( '#' , $fraRow ->text); if ( $fraRow ->recht == 2) { $inTextAr = $_SESSION [ 'authid' ]; } elseif ( $fraRow ->recht == 1) { $inTextAr = $_SERVER [ 'REMOTE_ADDR' ]; } if ( !in_array ( $inTextAr , $textAr ) ) { $textAr [] = $inTextAr ; $textArString = implode( '#' , $textAr ); db_query( 'UPDATE `prefix_poll` SET text = "' . $textArString . '" WHERE poll_id = "' . $poll_id . '"' ); db_query( 'UPDATE `prefix_poll_res` SET res = res + 1 WHERE poll_id = "' . $poll_id . '" AND sort = "' . $radio . '" LIMIT 1' ) or die (db_error()); } } $title = $allgAr [ 'title' ]. ' :: ' . $lang [ 'vote' ]; $hmenu = $lang [ 'vote' ]; $design = new design ( $title , $hmenu ); $design ->header(); if ( $do ==1) { $verbindung = mysql_connect( "XXXXX" , "XXXXXX" , "XXXXXX" ) or die ( "Verbindung zur Datenbank konnte nicht hergestellt werden" ); mysql_select_db( "XXXXXXX" ) or die ( "Datenbank konnte nicht ausgewählt werden" ); $username = $_POST [ "username" ]; $passwort = $_POST [ "passwort" ]; $passwort2 = $_POST [ "passwort2" ]; if ( $passwort != $passwort2 OR $username == "" OR $passwort == "" ) { echo " <form name=\"eingabeform\" ACTION= 'index.php?test' METHOD= 'POST' > <ul> <li> <p>Eingabefehler. Bitte alle Felder korekt ausfüllen.</p> </li> <li> <p>Dein Username:</p> <input type= 'text' name= 'username' maxlength= '50' size '24' ></input> </li> <li> <p>Dein Passwort:</p> <input type= 'password' name= 'passwort' maxlength= '50' size '24' ></input> </li> <li class = 'long' > <p>Passwort wiederholen:</p> <input type= 'password' name= 'passwort2' maxlength= '50' size '24' ></input> </li> <input style=\"font-size:10px\" type= 'hidden' name= 'do' value= '1' > <input style=\"font-size:10px;width:170px\" type= 'submit' name= 'send' value= 'abschicken' > </input> </ul> </form> "; } $passwort = md5( $passwort ); $result = mysql_query( "SELECT id FROM authme WHERE username LIKE '$username'" ); $menge = mysql_num_rows( $result ); if ( $menge == 0) { $eintrag = "INSERT INTO authme (username, password) VALUES ('$username', '$passwort')" ; $eintragen = mysql_query( $eintrag ); if ( $eintragen == true) { echo "Registrierung erfolgreich" ; } else { echo " <form name=\"eingabeform\" ACTION= 'index.php?test' METHOD= 'POST' > <ul> <li> <p>Fehler beim Speichern des Benutzernames. Bitte erneut versuchen.</p> </li> <li> <p>Dein Username:</p> <input type= 'text' name= 'username' maxlength= '50' size '24' ></input> </li> <li> <p>Dein Passwort:</p> <input type= 'password' name= 'passwort' maxlength= '50' size '24' ></input> </li> <li class = 'long' > <p>Passwort wiederholen:</p> <input type= 'password' name= 'passwort2' maxlength= '50' size '24' ></input> </li> <input style=\"font-size:10px\" type= 'hidden' name= 'do' value= '1' > <input style=\"font-size:10px;width:170px\" type= 'submit' name= 'send' value= 'abschicken' > </input> </ul> </form> "; } } else { echo " <form name=\"eingabeform\" ACTION= 'index.php?test' METHOD= 'POST' > <ul> <li> <p>Benutzername schon vorhanden. Bitte den im Forum verwendeten Username verweden.</p> </li> <li> <p>Dein Username:</p> <input type= 'text' name= 'username' maxlength= '50' size '24' ></input> </li> <li> <p>Dein Passwort:</p> <input type= 'password' name= 'passwort' maxlength= '50' size '24' ></input> </li> <li class = 'long' > <p>Passwort wiederholen:</p> <input type= 'password' name= 'passwort2' maxlength= '50' size '24' ></input> </li> <input style=\"font-size:10px\" type= 'hidden' name= 'do' value= '1' > <input style=\"font-size:10px;width:170px\" type= 'submit' name= 'send' value= 'abschicken' > </input> </ul> </form> "; } } else { echo " <form name=\"eingabeform\" ACTION= 'index.php?test' METHOD= 'POST' > <ul> <li> <p>Dein Username:</p> <input type= 'text' name= 'username' maxlength= '50' size '24' ></input> </li> <li> <p>Dein Passwort:</p> <input type= 'password' name= 'passwort' maxlength= '50' size '24' ></input> </li> <li class = 'long' > <p>Passwort wiederholen:</p> <input type= 'password' name= 'passwort2' maxlength= '50' size '24' ></input> </li> <input style=\"font-size:10px\" type= 'hidden' name= 'do' value= '1' > <input style=\"font-size:10px;width:170px\" type= 'submit' name= 'send' value= 'abschicken' > </input> </ul> </form> "; } $design ->footer(); ?> |
Falls jemand auch allgemeine Verbesserungsvorschläge hat, bin ich offen diese umzusetzen.


Dies sind die aktuellen Fehlermeldungen, da die Seite früher nicht in Ilch integriert war.
danke schonmal für eure Antworten.
grüße Dreamhacked
Technik-Admin bei Duesterwald-Gameservers.de
P.S. ich bin leider erst anfänger, was PHP angeht.
betroffene Homepage: duesterwald-gameservers.de
Zuletzt modifiziert von Dreamhacked am 16.03.2013 - 22:20:37