PDA

View Full Version : database update error, any help ???


N00BIE
10-03-2003, 05:37 PM
I've installed a hack and it all works fine except when i edit the post i get this Error.

Database error in vBulletin 2.3.2:

Invalid SQL: INSERT INTO home (threadid,plz,user) VALUES('105','I've edited this bit cos it contains personal info','')
mysql error: Duplicate entry '105' for key 1
mysql error number: 1062


It doesn't seem to wont to update ??? only Insert but it can't cos it already contains some data, below is a bit of the code that deals with the EDITPOST.php

//FIND......

$DB_site->query("UPDATE post SET title='".addslashes(htmlspecialchars($title))."',pagetext='".addslashes($message)."',allowsmilie='$allowsmilie',showsignature='$signa ture',iconid='$iconid'$editedbysql$attachmentsql WHERE postid='$postid'");
$DB_site->query("DELETE FROM searchindex WHERE postid=$postid");
indexpost($postid);



//BELOW ADD.......

if (($threadinfo[forumid]!=0) && $isfirst) { //0 = All forums
if (($plz == '') && ($user == '')) {
$DB_site->query("DELETE FROM home WHERE threadid='$threadid'");
} else {
$home=$DB_site->query_first("SELECT plz,user from home WHERE threadid=$threadid");
if (($home['plz'] != '') && ($home['user'] != '')) {
$DB_site->query("UPDATE home SET plz='".addslashes($plz)."',user='".addslashes($user)."' WHERE threadid='$threadid'");
} else {
$DB_site->query("INSERT INTO home (threadid,plz,user) VALUES('$threadid','".addslashes($plz)."','".addslashes($user)."')");
}
}
}



Any help for this would be very helpful as my mailbox is getting full with msgs from the database concerning this error.

filburt1
10-03-2003, 05:52 PM
I've installed a hack and it all works fine except when i edit the post i get this Error.

Database error in vBulletin 2.3.2:

Invalid SQL: INSERT INTO home (threadid,plz,user) VALUES('105','I've edited this bit cos it contains personal info','')
mysql error: Duplicate entry '105' for key 1
mysql error number: 1062


It doesn't seem to wont to update ??? only Insert but it can't cos it already contains some data, below is a bit of the code that deals with the EDITPOST.php

//FIND......

$DB_site->query("UPDATE post SET title='".addslashes(htmlspecialchars($title))."',pagetext='".addslashes($message)."',allowsmilie='$allowsmilie',showsignature='$signa ture',iconid='$iconid'$editedbysql$attachmentsql WHERE postid='$postid'");
$DB_site->query("DELETE FROM searchindex WHERE postid=$postid");
indexpost($postid);



//BELOW ADD.......

if (($threadinfo[forumid]!=0) && $isfirst) { //0 = All forums
if (($plz == '') && ($user == '')) {
$DB_site->query("DELETE FROM home WHERE threadid='$threadid'");
} else {
$home=$DB_site->query_first("SELECT plz,user from home WHERE threadid=$threadid");
if (($home['plz'] != '') && ($home['user'] != '')) {
$DB_site->query("UPDATE home SET plz='".addslashes($plz)."',user='".addslashes($user)."' WHERE threadid='$threadid'");
} else {
$DB_site->query("INSERT INTO home (threadid,plz,user) VALUES('$threadid','".addslashes($plz)."','".addslashes($user)."')");
}
}
}



Any help for this would be very helpful as my mailbox is getting full with msgs from the database concerning this error.
threadid is apparently a unique column in your database, and as such you can't have two values be the same.

It may also be that your tables are corrupted, although unlikely.

N00BIE
10-03-2003, 05:57 PM
does this mean this hack is unable to be updated ?? or just the code needs to be modified ?? as you can tell i haven't a clue about these things :(