Jump to content

PHP easy help please


perezf

Recommended Posts

this should be simple
i just wanted to know what was wrong for the following code

[code]<?php
//replace username and password with your mysql name and password
$conn = mysql_connect("*******","*****","*****");

//select the database
$db = mysql_select_db("*******");

$username = $_POST["username"];
$password = $_POST["password"];
$email = $_POST["email"];

$result = MYSQL_QUERY("SELECT * from registration WHERE username='$username' and password='$password'")
  or die ("Name and password not found or not matched");

$worked = mysql_fetch_array($result);

$username = $worked[username];
$password = $worked[password];
$email = $worked[email];

if($worked){
echo "<a href=\"#\" class=\"menu\">Home</a>-
<a href=\"#\" class=\"menu\">Learn HTML</a>-
<a href=\"#\" class=\"menu\">Learn CSS</a>-
<a href=\"#\" class=\"menu\">Learn PHP</a>-
<a href=\"#\" class=\"menu\">About Us</a>-
<a href=\"#\" class=\"menu\">FAQ's</a>";}

else{
echo "<a href=\"#\" class=\"menu\">Home</a>-
<a href=\"register.php\" class=\"menu\">Register</a>-
<a href=\"login.php\" class=\"menu\">Login In</a>-
<a href=\"#\" class=\"menu\">About Us</a>-
<a href=\"#\" class=\"menu\">FAQ's</a>";}
?>[/code]
Link to comment
https://forums.phpfreaks.com/topic/16843-php-easy-help-please/
Share on other sites

[code]if($worked){
echo "<a href=\"#\" class=\"menu\">Home</a>-
<a href=\"#\" class=\"menu\">Learn HTML</a>-
<a href=\"#\" class=\"menu\">Learn CSS</a>-
<a href=\"#\" class=\"menu\">Learn PHP</a>-
<a href=\"#\" class=\"menu\">About Us</a>-
<a href=\"#\" class=\"menu\">FAQ's</a>";}

else{
echo "<a href=\"#\" class=\"menu\">Home</a>-
<a href=\"register.php\" class=\"menu\">Register</a>-
<a href=\"login.php\" class=\"menu\">Login In</a>-
<a href=\"#\" class=\"menu\">About Us</a>-
<a href=\"#\" class=\"menu\">FAQ's</a>";[/code]

this is the part that is not working
Link to comment
https://forums.phpfreaks.com/topic/16843-php-easy-help-please/#findComment-70884
Share on other sites

The problem is with your logic here
[code]
$result = MYSQL_QUERY("SELECT * from registration WHERE username='$username' and password='$password'")
  or die ("Name and password not found or not matched");

$worked = mysql_fetch_array($result);
[/code]

The query would only fail if there was an error, not if the matching name and password were not found.  The query might easily work but not return any matched rows. So you need to count how many rows were returned, if it was none then the username and password have no match.

[code]
$result = MYSQL_QUERY("SELECT * from registration WHERE username='$username' and password='$password'")
  or die ("Name and password not found or not matched");

$numofrows = mysql_num_rows($result);

$worked = mysql_fetch_array($result);

if($numofrows == 0)
{
    // no match found
}
[/code]
Link to comment
https://forums.phpfreaks.com/topic/16843-php-easy-help-please/#findComment-70885
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.