Inloggning

PHP

0 svar · 322 visningar · startad av Ella

Medlem sedan mars 200927 inlägg
Trådstart#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>
245 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)