vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   MySQL error number: 1052 (https://vborg.vbsupport.ru/showthread.php?t=82101)

Pete_C 05-27-2005 12:13 AM

MySQL error number: 1052
 
Hi, just the other day, the forum started giving me this error, whenever I tried to look at a deleted post (I'm an admin). As far as I know, there have been no changes to any templates or anything like that, I'd much appreciate it if someone could help me sort this. Also, it's not just me who is getting this error, it appears to be every mod/admin.

Code:

Database error in vBulletin 3.0.7:

Invalid SQL:
        SELECT
                post.*, post.username AS postusername, post.ipaddress AS ip,
                user.*, userfield.*, usertextfield.*,
                icon.title as icontitle, icon.iconpath,
                IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
                ,avatar.avatarpath, NOT ISNULL(customavatar.avatardata) AS hascustomavatar, customavatar.dateline AS avatardateline
                ,level,
                NOT ISNULL(deletionlog.primaryid) AS isdeleted,
                post_parsed.pagetext_html, post_parsed.hasimages
               
        FROM post AS post
        LEFT JOIN user AS user ON(user.userid = post.userid)
        LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid)
        LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid)
        LEFT JOIN icon AS icon ON(icon.iconid = post.iconid)
        LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid) LEFT JOIN reputationlevel AS reputationlevel ON(user.reputationlevelid = reputationlevel.reputationlevelid)
        LEFT JOIN deletionlog AS deletionlog ON(deletionlog.primaryid = post.postid AND type = 'post')
        LEFT JOIN post_parsed AS post_parsed ON(post_parsed.postid = post.postid)
        WHERE post.postid = 17781

mysql error: Column: 'type' in on clause is ambiguous

mysql error number: 1052

Date: Thursday 26th of May 2005 06:58:19 PM
Script: http://www.l9ianime.com/forums/showpost.php?p=17781
Referer: http://www.l9ianime.com/forums/showthread.php?t=1473&page=2&pp=10

if possible, can you tell me what I need to change, and in which file.

Regards, Pete C

Paul M 05-27-2005 12:17 AM

Have you edited showpost.php at all ?

Pete_C 05-27-2005 01:03 AM

I'll ask the other admins.

::EDIT::

The person who is likely to have, if anyone has, is not online right now, I'll ask him and get back to you ASAP, Thanks.

Pete_C 05-30-2005 09:19 AM

I've aked the others who have access and none of them have edited any files at all, only a few template changes, which are superficial.

Paul M 05-30-2005 09:23 AM

Have you edited any of the vB tables (i.e added new fields as part of a hack).

shak_attack 05-30-2005 01:07 PM

Hi, im a fellow admin.

I created a custom login/registration script based off vbulletin, the login just reads data from the sql database, and for the registration I mimicked the forum's register.php file, basically it adds a new row ONLY in the `user` table. Im guessing the problem might be users who have used this custom registration form and have their data only in a `user` row when I needed to add data in some other tables in the database?

I'm not sure, where is data added when a new user signs up using vbulletin (besides `user`)

Andreas 05-30-2005 01:13 PM

Can you post the structures of the following tables:
  • post
  • post_parsed
  • user
  • userfield
  • usertextfield
  • icon
  • avatar

One or more of these tables seem to have a column named type, which they don't have by default.

Marco van Herwaarden 05-30-2005 01:51 PM

My guess is that you added a new column 'type' to the user table.

This is the reason the above query is failing. To fix it change it to the fully qualified name. Ie:
[sql]....... ON(deletionlog.primaryid = post.postid AND deletionlog.type = 'post')[/sql]

PS You can not add a new user by only adding him to the user-table. Registering a new user involves more tables then only the user table.

shak_attack 05-30-2005 05:59 PM

Ahh, yes, I added a column name "type" in the `user` table. So I have to rename this to something else?

Also, the registration script that I made involves only adding data to the `user` table and it looks it worked because new members are able to register with that form and start posting on the forum. What other tables do I have to modify?

Andreas 05-30-2005 06:31 PM

You can either rename the field or modify the query, but i'd suggest to rename to field to avoid further problems.
Tables userfield and usertextfield should at least be filled too.

shak_attack 05-30-2005 06:52 PM

Hmm, I noticed that the userids in `userfield` and `usertextfield` match with those in `user`. However, all those members that registered using my registration form do not have a row in those two tables... what should I do about that?

Also, im guessing that I just have to increment each of those tables by a row so that a new row with the userid of the user registering is made?

Andreas 05-30-2005 06:54 PM

Quote:

Originally Posted by shak_attack
what should I do about that?

Create the missing rows :)

Quote:

Also, im guessing that I just have to increment each of those tables by a row so that a new row with the userid of the user registering is made?
When you insert a new user into table user you will gat an insert id (=userid).
Use this to fill the other tables.

shak_attack 05-30-2005 07:07 PM

crap, they're a whole load of ones i'd have to add then... knowing that `userfield` and `usertextfield` are empty, what problems would users be facing? what happens if they try to modify the stuff thats there through the forum?

the userid number is auto_increment, so just creating a new row will create the new id for all the other tables too right (this is on registering a new user).

Andreas 05-30-2005 07:17 PM

Quote:

Originally Posted by shak_attack
what problems would users be facing?

They can't modify their signature, buddy-/ignorelist, pm-folders, subscription folders, search preferences and custom profile fields like Location, Interests, Occupation and Biography.

Quote:

the userid number is auto_increment, so just creating a new row will create the new id for all the other tables too right (this is on registering a new user).
Yes. Wherever there is a userid, it is the ID for this user (in table user).

You can fix these problems through ACP / Import & Maintenance / Update Counters by clicking Fix Broken User Profiles.

Marco van Herwaarden 05-31-2005 11:13 AM

This could more problems if also new members have been added using standard vB functions.

shak_attack 05-31-2005 12:15 PM

I'm fixing the broken user profiles, and then modifying the registration script to add a new userid in the `userfield` and `usertextfield` tables. That should solve the problems.


All times are GMT. The time now is 02:38 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01546 seconds
  • Memory Usage 1,752KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code_printable
  • (4)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (16)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete