Аман от тези регистър системи, но и аз съм с проблем ...

mexx

Registered
Вече ми идва да се гръмна - имам код, който мъча, но явно допускам грешка.
Моля ви хвърлете едно око защо не ми извлича от базата данни име и потребител при логване !
Това е логин скрипта:

<?php
session_start();

$host="localhost";
$db_username="root";
$db_password="test";
$db_name="alabala";
$tbl_name="users";

$con=mysql_connect("localhost", "root", "test")or die("cannot connect");
mysql_select_db("test", $con)or die("cannot select DB");

if (isset($_POST['login'])) {

if($_POST['username'] || $_POST['password']) {

$sql=mysql_query("SELECT * FROM users WHERE username='$username' and password='$password'") or die(mysql_error());
$result = mysql_fetch_array($sql);

if($result['password'] != $password) {
echo "error!";
}else{
echo ("<center><strong>success, welcome</strong></center>");
}

$username=$_POST['username'];
$password = md5($_POST['password']);

session_register("username");
session_register("password");

#echo $password;
#echo "<br />";
#echo $result['password'];

}
}

?>
 
откъде се присвояват $username $pasword ?

if($_POST['username'] || $_POST['password']) {

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


$sql=mysql_query("SELECT * FROM users WHERE username='$username' and password='$password'") or die(mysql_error());
 
<?php
session_start();

$host="localhost";
$db_username="root";
$db_password="test";
$db_name="alabala";
$tbl_name="users";

$con=mysql_connect("localhost", "root", "test")or die("cannot connect");
mysql_select_db("test", $con)or die("cannot select DB");



if($_POST['username'] &&$_POST['password'])
{
$password = md5(trim($_POST['password']));
$sql=mysql_query("SELECT * FROM users WHERE username='$username' and password='$password'") or die(mysql_error());

$result = mysql_query($sql);


if(mysql_num_rows($result)>0)
{

echo ("<center><strong>success, welcome</strong></center>");
}
else
{
echo "Грешен усер или пас."; exit;
}


$HTTP_SESSION_VARS['user'] = $_POST['username'];

echo "здраве ".$HTTP_SESSION_VARS['user'] ;


}


?>
 
Направих го аз обаче изгърмя:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Program Files\xampp\htdocs\xampp\mm\checkpoint.php on line 23
Грешен усер или пас.

Що така?
 
<?php
session_start();

$host="localhost";
$db_username="root";
$db_password="test";
$db_name="alabala";
$tbl_name="users";

$con=mysql_connect("localhost", "root", "test")or die("cannot connect");
mysql_select_db("test", $con)or die("cannot select DB");

а и защо задаваш това:

$host="localhost";
$db_username="root";
$db_password="test";
$db_name="alabala";
$tbl_name="users";

като след това не ги ползваш, а направо пишеш така:

$con=mysql_connect("localhost", "root", "test")or die("cannot connect");
mysql_select_db("test", $con)or die("cannot select DB");

като червеното е грешно, защото като гледам базата ти е alabala не test
 
admin каза:
<?php
session_start();

$host="localhost";
$db_username="root";
$db_password="test";
$db_name="alabala";
$tbl_name="users";

$con=mysql_connect("localhost", "root", "test")or die("cannot connect");
mysql_select_db("test", $con)or die("cannot select DB");



if($_POST['username'] &&$_POST['password'])
{
$password = md5(trim($_POST['password']));
$sql=mysql_query("SELECT * FROM users WHERE username='$username' and password='$password'") or die(mysql_error());

$result = mysql_query($sql);


if(mysql_num_rows($result)>0)
{

echo ("<center><strong>success, welcome</strong></center>");
}
else
{
echo "Грешен усер или пас."; exit;
}


$HTTP_SESSION_VARS['user'] = $_POST['username'];

echo "здраве ".$HTTP_SESSION_VARS['user'] ;


}


?>

Малко офф
Админ какво точно прави това trim,за md5 ясно ама на trim не разбирам функцията :)
Код:
$password = md5(trim($_POST['password']));
 
trim премахва спейсове в началото и в края на стринга
накратко :
$str = " String ";
echo trim($str);
ще върне String без празните места.
Има функции които премахват само в ляво или само в дясно .
 

Back
Горе