webForumDet fria alternativet

Inloggning

0 svar · 303 visningar · startad av Ella

EllaMedlem sedan mars 200927 inlägg
#1

Hej, skulle behöva lite idéer om varför inte min inlogging fungerar. Får som felmeddelande att inloggningen misslyckades och jag är säker på att tabellerna är korrekta. Vart lägger jag sedan in att den ska vid rätt användarnamn och rätt lösenord gå vidare till startsida.php?

<?php
session_start();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns = "http://www.w3.org/1999/xhtml">
<head>
<title>Inloggning</title>
</head>

  <body>
  <form action="inloggning.php" method="post">
	Anv&auml;ndarnamn:<br>
	<input type="text" name="UserName" id="UserName" ><br>
	L&ouml;senord:<br>
	<input type="password" name="Password" id="Password"><br>
	<input type="submit" name="btnSubmit" value="Logga in">
	</form>
<div>

<?php

function preparePostData($value)
{
 
   if (get_magic_quotes_gpc()) {
       $value = stripslashes($value);
   }
 
   if (!is_numeric($value)) {
       $value = "'".addslashes($value)."'";
   }
   return $value;
}

function checkInputs($input){
	if(preg_match("/^[A-Za-z0-9_]{4,20}$/",$input,$matches))
		return print_r($matches);
	else
		return "no matches";
}

if(isset($_POST['btnSubmit'])){
	$hostname = '***';
	$username = '***';
	$password = '***';
	
	try {
		$dbConn = new PDO("mysql:host=$hostname;dbname=***", $username, $password);
		$sql = "SELECT * FROM members WHERE UserName='". preparePostData($_POST['UserName']) ."' AND Password='".md5(preparePostData($_POST['Password']))."'";

		$stmt = $dbConn->query($sql);
		$result = $stmt->fetch(PDO::FETCH_BOTH);
		
	
		if($result['ID'] != ""){
			echo "Hej ".$result['UserName']." <br /> Du &auml;r inloggad";
			$_SESSION["LoggedIn"] = "Yes";
			
		}
		else{
			echo "Inloggning misslyckades";
			
		}	

		
		$dbConn = "null";
		
		
		echo "<h2>SQL sats </h2>".$sql."<br />";
		echo "<h2>MySQL escaped strings</h2>Username: ".preparePostData($_POST['UserName'])." <br />Lösen: ".preparePostData($_POST['Password'])."<br />";
		echo "<h2>Kontrollera input med regex</h2>Username: ".checkInputs($_POST['UserName'])." <br />Lösen: ".checkInputs($_POST['Password'])."<br />";
			
		}
	catch(Exception $e)
		{
			echo "Inloggningen misslyckades f&ouml;rs&ouml;k igen!";
		}
}
?>
</div>
</body>
</html>
127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)