Hello
Well, i decided to upgrade Drupal to 6.2 and guess what, my website is dead !
I've been following step by step the instructions, i've all the necessary requirements, etc ... and the result is either :
during install step 4 :
* user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in .../public_html/includes/menu.inc on line 315.
* user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in .../public_html/includes/menu.inc on line 315.
or if i go to update.php
Fatal error: Call to undefined function filter_xss_bad_protocol() in .../public_html/includes/common.inc on line 888
So i've been reading / searching here and it seems though it's a known problem, there's no clear solution (or none i've seen so far). It just don't work anymore. So please, could someone indicates me how can i can correct this problem.
Please help !
Comments
To be more precise, i've
To be more precise, i've also those errors :
Warning: Unknown column 's.sid' in 'where clause' query: SELECT u.*, s.* FROM users u INNER JOIN sessions s ON u.uid = s.uid WHERE s.sid = 'ccf038d1e607565d1a4f7b5f05874c7b' in .../public_html/includes/database.mysqli.inc on line 128
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at .../public_html/includes/database.mysqli.inc:128) in .../public_html/includes/bootstrap.inc on line 976
Warning: Cannot modify header information - headers already sent by (output started at /.../public_html/includes/database.mysqli.inc:128) in .../public_html/includes/bootstrap.inc on line 577
Warning: Cannot modify header information - headers already sent by (output started at .../public_html/includes/database.mysqli.inc:128) in .../public_html/includes/bootstrap.inc on line 578
Warning: Cannot modify header information - headers already sent by (output started at .../public_html/includes/database.mysqli.inc:128) in .../public_html/includes/bootstrap.inc on line 579
Warning: Cannot modify header information - headers already sent by (output started at .../public_html/includes/database.mysqli.inc:128) in .../public_html/includes/bootstrap.inc on line 580
Headers already sent
Usually means that there is whitespace in front of the first opening PHP tag in one of the files or whitespace after the last closing PHP tag in one of the files (look at any files you've edited).
Generally it is best to leave off the last closing PHP tag.
--
Anton
New to Drupal? | Troubleshooting FAQ
Example knowledge base built with Drupal
Same problem with clean install
I've got the same problem but I did a clean install (deleted all the files in my drupal directory).
Very disconcerting.
Thx for your answer I had
Thx for your answer
I had just edited settings file and i've check, there's no mistake... Besides that, all i can do is install a fresh copy of Drupal (differents tables etc.), every thing else immediatly got me plenty of various error messages.
I tried creating different versions (even 5.7 don't work !), different web browsers, cleaning cache, verifying javascript, reading dozens of threads, and nothing make it ... At least the new version seems to work fine, and the install worked perfectly. Now, how i'll got back all that was made before, i hope someone have a solution.
:((
enable cookies
Same problem until i activated cookies
Enable Javascript, empty database, and rerun install.php
This worked for me just now with 6.3.
Firefox Noscript is set to deny javascript by default and I'd forgotten to allow my own new domain. :)
"One who is injured ought not to return the injury, for on no account can it be right to do an injustice; and it is not right to return an injury, or to do evil to any man, however much we have suffered from him."
- Socrates
SOLUTION: EMPTY THE DATABASE
Like everyone else here I had the "line 315" error while installing 6.3
I was able to complete the installation by deleting (aka "dropping") all of the tables (ie "emptying the database").
This is done through PHPMyAdmin.
I then hit refresh in the Drupal installation browser window and my installation completed successfully!
(This is a Dreamhost install for those who are interested.)
Good luck!
- Jonathan Cross
Incorrect info
There is a lot of incorrect info here (people shooting in the dark).
I did not have to change settings.php.
I also did not have to do anything unusual with cookies or javascript in my Firefox3 browser.
Its a server-side error in which Drupal seems to create database tables which are somehow incompatible with itself.
Duplicate error:
http://drupal.org/node/247360
drop tables and page refresh
drop tables and page refresh worked for me
menu.inc 315 error - my solution
fabius
My javascript was enabled, I dropped all the tables before importing the dev backup and I ran install.php (which said everthing was fine).
But I still saw the default site and the error message.
So I used example.com/user and logged in (note: requires login of
dev
site). Site appeared with no content and no theme (although files and Admin settings correct).
Edited my default theme (Minelli) and changed one color slightly. Theme appeared but still no content linked to Primary Menu.
Encouraged, I started playing around with Content Management. Edited one item slightly and saved it.
Bingo! Production site = dev site (at long last).
FIX: Cookies issue for me
I received the error due to having cookies disabled in my browser.
The fix: (assuming a fresh installation and not an upgrade)
- Enable cookies in browser
- Drop tables in database (I used MySQL Admin to drop the schema and create a new one)
- Reset settings.php back to default. Copy default.settings.php (/drupal6-6/sites/default/), delete settings.php, and rename your copied version "default.settings.php" to "settings.php"
- If you're a linux user, enable read & write permissions on settings.php (chmod a+w settings.php)
- Start Drupal configuration again in your browser
Cookies
Also check your
$cookie_domainand$conf[reverse_proxy]variables in the settings.php file. Check that it is set and set correctly. (If you encounter this problem)I ran into the problem when my Apache server was running behind a reverse proxy and the cookies must've been issued for the internal host name rather than the x-forwarded host name.
Cookies #2
Good pointer on the cookies - thanks.
Don't try to be clever like me and set the $cookie_domain variable before you have the site up and running. I did and ran into this error.
Best to leave the $cookie_domain setting until site is running!
Cheers,
Crom
Same problem solved
Hi!
I had the same problem, when I found this thread. The hint with cookies was good, and reduced amount of errors and warnings generated while installing Drupal 6.20. Please notice, it was "another drupal page" installation within one drupal core system.
So, I got same errors over and over, and after hour of installation attepts and database drops, I realized that I copied settings.php from another installation, where I specified multiple db_prefixes as an array (not as a single string) in $db_prefix, because some tables were shared between many websites. So, the solution was to comment this array and create single prefix as a string. I run installation again an it worked! Now, when everything was fine, I could restore these multiple prefixes and new drupal was sharing data with older pages. So, finally the hint with clearing settings.php to defaults was also right :)
I know, this is obvious, even for me... But you know, its really easy to overlook something really important.
Best Regards,
Mateusz