webForumDet fria alternativet

unexpected T_VARIABLE snälla hjälp!

6 svar · 3 583 visningar · startad av viktorbc

viktorbcMedlem sedan feb. 20092 inlägg
#1

Hej!
Jag har ett login scrip (php) men när jag går in på min hemsida står det "Parse error: parse error, unexpected T_VARIABLE in /home/www/bccommunity.goldeye.info/login.php on line 4"

Här är scriptet (skrivit till exempel "db anvnamn" på några ställen av förklagliga skäll.
Någon som vet var felet är? Tacksam för svar!

<?php

$username = $_POST['username']
$password = $_POST['password']

if ($username&&$password)
{

}
$connect = mysql_connect("bccommunity.goldeye.info","db anvnamn","db lösen") or die ("Kunde inte ansluta mysql")
mysql_select_db("db namn") or die("Kunde inte hitta db!");

$query = mysql_query('SELECT * FROM users where username='$username' AND password = '$pass'

$numrows = mysql_num_rows($query);

if ($numrows!=0)
{

while ($row = mysql_fetch_assoc($query))
{
$dbusername = $row ['username'];
$dbpassword = $row ['password'];
}

if ($username==$dbusername&&$password==$dbpassword)

{
echo "Du �r inloggad!";
}
else
echo "Fel l�senord!";

}
else
die("Anv�ndaren finns inte!");

}
else
die("Anv�ndarnamn och l�senord saknas!")

?>

MickeA.comMedlem sedan feb. 20034 441 inlägg
#2
$username = $_POST['username']
$password = $_POST['password']
  • På ovanstående rader avslutar du inte med semikolon ( ; )
  • Använd kod-taggarna! ([ kod ][ /kod ]) när du postar kod, eller när du postar PHP, använder PHP-taggarna ([ php ][/ php ]).
  • Posta i rätt forum! Den här tråden bör ligga i "PHP", inte i "Script från WF's Medlemmar".
MickeA.comMedlem sedan feb. 20034 441 inlägg
#3

Du har även missat semikolon ( ; ) och slut paranets på raderna:

$query = mysql_query('SELECT * FROM users where username='$username' AND password = '$pass'

...och...

die("Anv&#65533;ndarnamn och l&#65533;senord saknas!")

Dessutom har du flera }else{ i samma if-sats i slutet, du har missat flera { och } på vägen, köp en bok, lär dig syntaxen!

viktorbcMedlem sedan feb. 20092 inlägg
#4

sorry, ni skulle inte kunna ge ett exempel på hur det ska se ut? Det vore mycket snällt.

MickeA.comMedlem sedan feb. 20034 441 inlägg
#5
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if ($username&&$password){
	$connect = mysql_connect("bccommunity.goldeye.info","db anvnamn","db lösen") or die ("Kunde inte ansluta mysql");
	mysql_select_db("db namn") or die("Kunde inte hitta db!");

	$result = mysql_query('SELECT username, password FROM users where username='$username' AND password = '$pass');
	if(!(mysql_num_rows($result) == false)){
		echo "Användaren hittades";

	}else{
		echo "Fel lösenord eller så finns inte användaren!";

	}
	mysql_free_result($result);

}else{
	die("Anv&#65533;ndarnamn och l&#65533;senord saknas!");
}
?>

Men som sagt, köp en bok, försök lära dig hur syntaxen ske se ut.
Sök även på forumet efter "sql injection" och se till att skydda dig mot det.

NiklassonMedlem sedan nov. 2000857 inlägg
#6

Flyttad från "Script - PHP"

PrometheusMedlem sedan mars 2001363 inlägg
#7

Det är också ett strängfel där

$query = mysql_query('SELECT * FROM users where username='$username' AND password = '$pass'

Ska vara

$query = mysql_query("SELECT * FROM users where username='$username' AND password = '$pass'");

eller

$query = mysql_query('SELECT * FROM users where username=\'' . $username . '\' AND password = \'' . $pass . '\'');
125 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)