24. januar 2009 - 14:00Der er
10 kommentarer og 2 løsninger
Fejl 500, internal server error
Hej eksperter.. Jeg får denne fejl, når jeg prøver at udføre en form på min hjemmeside.. er der nogle ideer om hvad jeg kan have gjort forkert omkring denne form?
Det skal til mit forsvar siges jeg er rimelig ny ang. funktioner så det er ikke sikkert at dette er den optimale måde at gøre det på, men jeg er også kun igang med at optimere systemet MEST muligt ;-) ----------------------------------
function logUserOut() { session_destroy(); echo "Du er nu logget ud"; echo "<meta http-equiv=\"refresh\" content=\"0;url=/index.php\">"; }
function whatHasHappenedInForum() { global $usernameLogInName, $passwordLogInPass, $password;
////////////////////////////////////// // Check what has happened in the forum since last login // IF($row['kontotype'] == "2"){ $resultCheckWhatHasHappenedForum = mysql_query(" SELECT * FROM forumanswers as fA INNER JOIN forumTopics as fT WHERE fT.forfatter = '".$row['id']."' AND fA.dato > '".$row['sidstelogin']."' AND fA.tiltopic = fT.id ORDER BY id DESC") or die(mysql_error()); $numRowsCheckWhatHasHappenedForum = mysql_num_rows($resultCheckWhatHasHappenedForum); } ELSE IF($row['kontotype'] == "3"){ $resultCheckWhatHasHappenedForum = mysql_query(" SELECT * FROM forumtopics WHERE dato > '".$row['sidstelogin']."' ORDER BY id DESC") or die(mysql_error()); $numRowsCheckWhatHasHappenedForum = mysql_num_rows($resultCheckWhatHasHappenedForum); } ELSE IF($row['kontotype'] == "4"){ $resultCheckWhatHasHappenedForum = mysql_query(" SELECT * FROM forumtopics, forumanswers WHERE dato > '".$row['sidstelogin']."' ORDER BY dato,id DESC") or die(mysql_error()); $numRowsCheckWhatHasHappenedForum = mysql_num_rows($resultCheckWhatHasHappenedForum); }
} } ELSE { echo "Intet nyt i forummet siden dit seneste login!"; }
// // End of the check ///////////////////////////////////////
}
function getUserData() {
global $usernameLogInName, $passwordLogInPass, $password;
IF($_POST['action'] == "login"){ IF(!empty($usernameLogInName) AND !empty($passwordLogInPass)){ $resultLogInUser9987 = mysql_query("SELECT * FROM login WHERE brugernavn = \"$usernameLogInName\" AND kodeord = \"$passwordLogInPass\" ORDER BY id DESC LIMIT 1") or die(mysql_error());
} // end of while loop } ELSE { // Check if there was any hits from the database echo "De indtastede data blev ikke matchet i databasen, prøv igen!"; } } ELSE { ///////////////////////////////////// // If one of the input's is not filled! //
echo "Du har glemt at udfylde brugernavn eller kodeord. Prøv igen!";
// end of the check about input's ///////////////////////////////////// } } ELSE IF($_GET['action'] == "logout"){ logUserOut(); }
global $userInfo; }
function logInUser() { global $usernameLogInName, $passwordLogInPass, $password;
getUserData();
foreach ((array) $userInfo as $userData){
///////////////////////////////////// // If the user is not banned create sessions // $_SESSION['profilid'] = $userData['id']; $_SESSION['status'] = "login"; $_SESSION['brugernavn'] = $userData['brugernavn']; $_SESSION['banned'] = $userData['banned']; $_SESSION['kontotype'] = $userData['kontotype']; $_SESSION['niveau'] = $userData['niveau']; $_SESSION['adminniv'] = $userData['adminniv']; $_SESSION['grafikniv'] = $userData['grafikniv']; $_SESSION['virkniv'] = $userData['virkniv']; $_SESSION['brugerip'] = getRealIpAddr();
// End of create sessions //////////////////////////////////////
}
echo "Du er nu logget ind som: ".$_SESSION['brugernavn']; echo "<br />"; echo "Siden dit sidste login er der: "; echo whatHasHappenedInForum();
du kan prøve at udkommentere det meste af den kode i din login-fil, som bliver kørt ved login, og lidt efter lidt "lukke" op for mere kode, og på den måde finde ud af hvor det går galt. den plejer jeg at bruge, når jeg ikke kan finde fejlen...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.