Ik krijg deze fout, maar ik snap het niet.
Als ik naar de code kijk, klopt het wel.
Maar toch zeurt hij om een fout.

Parse error: syntax error, unexpected variable "$pass"

<?php
	if($_POST['submit'] {
		$user = $_POST['username']
		$pass = md5($_POST['password'])
		$key = $_POST['key']
				
		$sql = "SELECT * FROM AdminUsers WHERE Username='".$user."' AND Passwd='".$pass."' AND LoginKey='".$key."'";
		$result = mysqli_query($connect, $sql);
		$logindetails = mysqli_fetch_all($result, MYSQLI_ASSOC);
		
		foreach($logindetails as $detail) {
			$_SESSION['Name'] = $detail['Name'];
			$_SESSION['Username'] = $detail['Username'];
			$_SESSION['Passwd'] = $detail['Passwd'];
			$_SESSION['Level'] = $detail['Access'];
			$_SESSION['ID'] = $detail['ID'];
		}

		header('location: ./inc/start.php');
		exit();
		echo "</div>";
	}else{

	echo"
		<div class='login'>
			<form id='login' action='".htmlspecialchars($_SERVER["PHP_SELF"]."' method='POST'>
				<fieldset>
					<input type='text' name='username' placeholder='Username'>
					<input type='password' name='password' placeholder='Password'>
					<input type='text' name='key' placeholder='Keycode'>
					<button type='submit' name='submit'>Login</button>
				</fieldset>
			</form>
			<img id='img-login' src='./img/page/Sexy-Devil.jpg'>
		</div>";
	}
?>
Nu het hele script nagekeken, zal het hier onder ook even posten, maar nu krijg ik dit :

Warning: Undefined array key "submit" in /data/sites/web/**********/www/Admin/inc/login.php on line 2

<?php
	if($_POST['submit']) {
		
		$user = $_POST['username'];
		$pass = md5($_POST['password']);
		$key = $_POST['key'];
				
		$sql = "SELECT * FROM AdminUsers WHERE Username='".$user."' AND Passwd='".$pass."' AND LoginKey='".$key."'";
		$result = mysqli_query($connect, $sql);
		$logindetails = mysqli_fetch_all($result, MYSQLI_ASSOC);
		
		foreach($logindetails as $detail) {
			$_SESSION['Name'] = $detail['Name'];
			$_SESSION['Username'] = $detail['Username'];
			$_SESSION['Passwd'] = $detail['Passwd'];
			$_SESSION['Level'] = $detail['Access'];
			$_SESSION['ID'] = $detail['ID'];
		}

		header('location: start.php');
		exit();
		echo "</div>";
	}else{

	echo"
		<div class='login'>
			<form id='login' action='".htmlspecialchars($_SERVER["PHP_SELF"])."' method='POST'>
				<fieldset>
					<input type='text' name='username' placeholder='Username'>
					<input type='password' name='password' placeholder='Password'>
					<input type='text' name='key' placeholder='Keycode'>
					<button type='submit' name='submit'>Login</button>
				</fieldset>
			</form>
			<img id='img-login' src='./img/page/Sexy-Devil.jpg'>
		</div>";
	}
?>
Heb je dit al uberhaupt vertaald?
Ik zie dat hier iets inderdaad niet klopt.
<?php
    if($_POST['submit']) { ?>


Ben nu even aan het denken wat het is, maar misschien dat jullie het ook zien en de oplossing weten?
Ik ben nog even aan het denken.
Tip: Kijk met isset() of de variabele $_POST['submit'] bestaat.

Maar nog beter is om dit te gebruiken:
if($_SERVER['REQUEST_METHOD'] == "POST") {

Je wilt eigenlijk weten of het formulier verstuurd is via POST, en niet of er op een knop is gedrukt.
Ik heb geen idee uit welke tutorial je dit gevonden hebt, maar wat je nu hebt is niet correct.

Nog een goede tip: $_POST is een array met alle waardes die je verstuurd hebt. Die kan je ook gebruiken in een print_r() om tijdens het ontwikkelen te zien wat er in zit. In jouw situatie had je dan zo kunnen zien dat die niet bestond, omdat je het script al aanriep zonder dat er wat verstuurd was.
Thanks, de isset optie werkt en ik was ook bij submit ook de value vergeten.
Nu doet hij wel al wat ik wil, maar nu moet ik de rest programeren.
Bedankt voor de hulp.
[color="#ff0000"]Je moet ook geen isset() gebruiken!
Ik vraag me af of je alles wel leest wat wij hier vertellen? Wij geven een hoop tips, maar we zien dat je er weinig mee doet. En dat zorgt voor deze community tot grote frustratie.

Ik wil echt niet bot zijn, maar lees alles gewoon eens goed door, en noteer het, en pas het toe!!
Wat ik adviseer: neem even een time-out voor programmeren, inplaats van dat je met een doel programmeert, zodat je even alles kan doorlezen, voorbeelden maken en uiteindelijk begrijpt wat het doet.
[/color]
Okay, zal even rustig aan doen en even alles terug lezen.
Soms werk ik idd te gehaast en dat brengt idd soms probs met zich mee.

Wel alvast bedankt voor de goede tips

[size=xsmall]Toevoeging op 05/04/2023 14:42:45:[/size]

Heb nu een raadsel voor jullie

Ik heb het meeste al opgelost trouwens, bedankt voor de goede tips.
Maar nu krijg ik dit.

Admin/start.php?menu=users (is de link) , dan zegt hij vervolgens : File not found.
En nu komt de grap, ik heb deze code :
if(file_exists('./inc/user.php')){
								echo "<a href='start.php?menu=users'>Users</a></div>";
							} else {
								echo "No file</div>";
							}

Vervolgens geeft hij dus wel de link aan, want de file is gevonden en bestaat.
Dan moet hij hem gaan includen en dan vindt hij de file niet.
De include is vervolgens dit
if($_GET['menu'] == 'users') {
							include("inc/user.php");
						}

ook al maak ik er dit van : include("./inc/user.php");, dan doet hij precies het zelfde
Okay, maar het geeft ook aan : Warning: Undefined array key "menu"

[size=xsmall]Toevoeging op 05/04/2023 15:31:51:[/size]

Ik ben zo dom, echt waar... moet beter leren lezen in mijn code....

start.php?menu=users moest zijn index.php?menu=users

Ik ben echt weer overwerkt
Nee jij bent niet dom.
Wij zijn dom. We begrijpen niet waarom het je niet lukt.
We hebben tijd te veel en daarom willen we onze hobby / professie graag delen met anderen.
Maar die anderen snappen ons niet helemaal.

Wat kunnen wij anders doen dat je het beter begrijpt?

Wat ons betreft mis je in ieder geval basiskennis van PHP.
Anders had je de eerste foutmeldingen gemakkelijk zelf op kunnen lossen.
Als je een paar uur tijd neemt om een tutorial te lezen, of een boek?
Dan heb je deze huiswerkopdracht in een halve dag klaar.

Maar dan moet je natuurlijk niet overwerkt zijn, anders is het te zwaar.

Reageren