Archief - Php problem

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

18AD

Legacy Member
ik hoop dat ik het hier op de juiste plaats post aangezien ik me nog maar net heb geregistreerd hier .

Dus mijn probleem ik had een php script geschreven voor in te loggen . maar er blijven een paar fouten in zitten ik heb aangeduid in de code waar dreamweaver een fout aanduid .

code:

<?

sessions_start();

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


if ($username&&$password)

{

$connect = mysql_connect ("localhost","s10740su_Phplogin"," ") or die (" Couldn't Connect ! ");
mysql_select_db ("s10740su_Phplogin") or die ("Couldn't find db");

$query = mysql_query ("SELECT * FROM users WHERE username='$username' ") ;

$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)

hier geeft hij een fout aan ! echo"<ahref='member.php'>Click</a> here to enter the member page."
$_SESSION['username']=$username ;

}

else echo ("incorrect password! ") ;

}
else die (" That user doesn't exist ! ")

} hier geeft hij ook een fout aan
else die (" Please enter Username and Password ");



?>

ik heb absoluut geen idee waar de fout zit hopelijk kunnen jullie mij helpen .

Mvg Kevin

Parnakra

Legacy Member
Code:
<?
sessions_start();

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

if ($username&&$password) {
   $connect = mysql_connect ("localhost","s10740su_Phplogin"," ") or die (" Couldn't connect ! ");
   mysql_select_db ("s10740su_Phplogin") or  die ("Couldn't find db");

   $query = mysql_query ("SELECT * FROM users WHERE username='$username' "); 
   $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("<a href='member.php'>Click</a>  here to enter the member page.");
         $_SESSION['username']=$username;
      } else {
         echo  ("incorrect password! ");
      }
   } else {
      die (" That user doesn't exist ! ");
   }
} else {
   die (" Please enter Username and Password ");
}
?>

Bv202

Legacy Member
Ik zou je hele script gewoon herschrijven, want veel goeds is er jammer genoeg niet aan:

- Wachtwoorden in plain text opgeslagen in de database
- Mogelijkheid tot SQL injectie
- Onnodig gebruik van oude mysql_ library
- Verkeerd gebruik van sessies
- Onnodige scriptafbrekingen (die())
- Mogelijkheid dat 2 accounts met dezelfde username en password zullen bestaan => problemen
- Onlogische code (if ($username&&$password)) => hier zal je een notice krijgen indien username of password niet via POST doorgestuurd worden
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan