OS: Windows XP
Apache: 2.3.x
PHP: 5.2.x
mySQL: 5.0.x
Drupal: 5.0

Install went perfectly, I fixed issues that were showing up on the "status report." Status report is basically clear except for the mbstring one which is showing up yellow.

I made a user account for a friend for her to take a look at my progress and no problems came up at all. She went ahead and attempted to login and commented that when she submits the login form the page reloads to show a blank login form without any errors. She tried logging in about 4 times as I watched the logs to see what would happen. Drupal showed that it was opening her session and then throwing an error. Unfortunately I didn't copy it before I decided to see if the problem was just her.

Thusly I logged out, and attempted to login as her. I had the same problem. I attempted logging in with the #1 account and found the same issue there too.

I cleared cache and cookies in my browser just in case it was that problem. Still having the same problem.

Below is the login info for the non-admin account.

URL: http://sheffielduncensored.ath.cx:8080/
User: miss existence
Password: kristina13

Has anyone else had the issue in the official 5.0 release?
If so what was the fix?

Comments

cog.rusty’s picture

I haven't seen anything similar, but there is a mention about using port 8080 in INSTALL.txt:

quote:
"If you are installing on a non-standard port, the port number is treated as the
deepest subdomain. For example: http://www.example.com:8080/ could be loaded
from sites/8080.www.example.com/. The port number will be removed according to
the pattern above if no port-specific configuration is found, just like a real
subdomain."

So, try using a 'sites/8080.sheffielduncensored.ath.cx' directory instead of 'sites/default' for your settings.php file, just in case...

If that doesn't work, try a single-word username to see if it works, to narrow down the problem.

-----

Edit: BTW, what does the error log say?

hubertus’s picture

I've also just tried a fresh install of 5.0 and have the same issue.
I have "admin" as username but also use a non standard port (88).
Strange that the RC didn't make any troubles....

cog.rusty’s picture

If the above (about using a nonstandard port) does not fix it and it worked before, then look in your settings.php file. There was a last minute change and a chunk of code was added. The one which starts with:

* We try to set the correct cookie domain. If you are experiencing problems
* try commenting out the code below or specifying the cookie domain by hand.
hubertus’s picture

Yes, that did solve the problem for me !

Thanks,
Hubertus

Miss Essence’s picture

Before attempting this I changes the sites/8080.localhost back to sites/default.

I do believe that worked for me.

I was able to login with Miss Essence.
And my friend is not able to login with miss existence. I'm having her clear her cookies and everything. In hopes it's just her IE being a snot. And tadaa it logged in.

Yay thankoo!

Though now when I go under admin, and check logs there is the errors below:

* warning: mysql_query() [function.mysql-query]: Unable to save result set in C:\Apache\htdocs\includes\database.mysql.inc on line 148.
* warning: mysql_query() [http://www.mysql.com/doc]: Table 'w' is marked as crashed and should be repaired in C:\Apache\htdocs\includes\database.mysql.inc on line 148.

cog.rusty’s picture

If the errors' time is old they could have been "false alarms" and everything is ok. (esp since there is no "w" table)

If they are new and are still generated for real tables then try a REPAIR TABLE (http://dev.mysql.com/doc/refman/5.0/en/repair.html)

Miss Essence’s picture

This worked, but it found another problem.

According to the error something is wrong with line 148 of the mysql include.

Line 148: $result = mysql_query($query, $active_db);

In chunk of code below:

>
/**
 * Helper function for db_query().
 */
function _db_query($query, $debug = 0) {
  global $active_db, $queries;

  if (variable_get('dev_query', 0)) {
    list($usec, $sec) = explode(' ', microtime());
    $timer = (float)$usec + (float)$sec;
  }

  $result = mysql_query($query, $active_db);

  if (variable_get('dev_query', 0)) {
    $bt = debug_backtrace();
    $query = $bt[2]['function'] . "\n" . $query;
    list($usec, $sec) = explode(' ', microtime());
    $stop = (float)$usec + (float)$sec;
    $diff = $stop - $timer;
    $queries[] = array($query, $diff);
  }

  if ($debug) {
    print '<p>query: '. $query .'<br />error:'. mysql_error($active_db) .'</p>';
  }

  if (!mysql_errno($active_db)) {
    return $result;
  }
  else {
    trigger_error(check_plain(mysql_error($active_db) ."\nquery: ". $query), E_USER_WARNING);
    return FALSE;
  }
}

Okay, the watchdog table went corrupt somehow.
I repaired it using the mySQL Administrator and its not throwing errors now.

Janneaa’s picture

Thank you so much for this solution! I've been banging my head in the wall the whole evening over this one. I love the new Drupal 5.0 but I thought that the whole point of a final release is that you have something that is tested and works well instead of a bunch last minute changes that completely break logging in for some.

cog.rusty’s picture

I think the reason this change to the default cookie handling went in is that it solved existing problems for others.

Miss Essence’s picture

I host locally, so that is a little confusing in terms of the 8080. I'll try it after I post this.

As I can't login I can't access the error log which is a serious pain in the ... Well you know. I looked through the files to see if there's a txt file or a .log file in drupal somewhere but I can't see one. Is there a way to view drupal errors without being logged in?

Problem is as the "e-mail" system doesn't work on my computer, so if I create a new account with one word it attempts to e-mail a password to me which won't go out.

cog.rusty’s picture

On localhost the directory would be 'sites/8080.localhost'

But what matters here is the domain name which is actually requested by the user, that is sheffielduncensored.ath.cx.

Miss Essence’s picture

I tried renaming the sites/default folder to sites/8080.sheffielduncensored.ath.cx and drupal is behaving the same way.

Tried creating a new account filled out the username and e-mail field, submitted it and it sent me back to the "index" with the login form as well as the "Welcome to your new Drupal website!"

It's still not throwing errors in a way that I can see...

changed the sites/default to sites/8080.localhost which caused what is below to appear.

"Unsupported database type

The database type is unsupported. Please use either mysql for MySQL 3.x & 4.0.x databases, mysqli for MySQL 4.1.x+ databases, or pgsql for PostgreSQL databases. The database information is in your settings.php file.

For more help, see the Installation and upgrading handbook. If you are unsure what these terms mean you should probably contact your hosting provider."

cog.rusty’s picture

Try removing the chunk of code mentioned above.

About your last effort, a site/localhost directory only works when you are accessing the site as http://localhost