[PHP & MySQL] Wbblite » SQL Database Error

_negel
Hallo GB,

Wenn ich im ACP einen User erstellen will, und dann auf Erstellen gehe, spuckt der Kleine mir diese Fehlermeldung aus:


SQL-DATABASE ERROR

Database error in WoltLab Burning Board: Invalid SQL: INSERT INTO bb1_userfields SET userid='7',,''
mysql error: 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 '''' at line 1
mysql error number: 1064
Date: 11.03.2010 @ 15:05
Script: /wbblite/acp/users.php
Referer: http://sonsofplunder.square7.ch/wbblite/...action=add&sid=


Er hat den User auch registriert, wenn man allerdings zB das Profil ansehen möchte, ist der Verweis angeblich ungültig und Beiträge dieses Users werden als Gast gewertet...
Im UserCP rumwerkeln geht allerdings wieder... >.<

Ich versteh auch gar nicht was er da mit der bb1_userfields will Augen rollen

Angehängt ist die acp/users.php


Hoffentlich weiß jemand etwas mit der Fehlermeldung anzufangen und kann mir helfen =/

LG; Jani
Melli
Geh mal in zeile 108 und füg da
php:
1:
$db->query("INSERT INTO bb".$n."_userfields SET userid='".$insertid."'".ifelse($fieldvalues,",".$fieldvalues));


anstatt des
php:
1:
$db->query("INSERT INTO bb".$n."_userfields SET userid='$insertid'".ifelse($fieldvalues,",".$fieldvalues));
ein und guck mal, obs jetzt geht.
_negel
Leider immernoch Fehlermeldung =/
Melli
Dieselbe? :o Hm. Komisch. Ich guck später nochmal drüber. großes Grinsen
_negel
Das wäre lieb smile
_negel
Jetzt kommt das hier großes Grinsen

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /users/sonsofplunder/www/wbblite/acp/users.php on line 107
_negel
Warning: Missing argument 2 for ifelse(), called in /users/sonsofplunder/www/wbblite/acp/users.php on line 107 and defined in /users/sonsofplunder/www/wbblite/acp/lib/functions.php on line 72

Warning: Cannot modify header information - headers already sent by (output started at /users/sonsofplunder/www/wbblite/acp/lib/functions.php:72) in /users/sonsofplunder/www/wbblite/acp/users.php on line 109


+hust+ großes Grinsen



Aber er erstellt jetzt User großes Grinsen Also vernünftig, der Verweis zum User ist nicht mehr ungültig usw - das klappt also schonmal. smile Hier schonmal danke smile

funtions.php angehängt
Melli
Zitat:
Original von Fischii <3
So:

code:
1:
$db->query("INSERT INTO bb".$n."_userfields SET userid='".$insertid."'".ifelse($fieldvalues.",".$fieldvalues));


Aber wenn du dir mal die functions.php ansiehst..
code:
1:
2:
3:
4:
function ifelse($expression,$returntrue,$returnfalse="") {
 if($expression) return $returntrue;
 else return $returnfalse;
}


müsste es dann nicht eher heißen:
code:
1:
$db->query("INSERT INTO bb".$n."_userfields SET userid='".$insertid."'".ifelse($fieldvalues,",",$fieldvalues));

versuch das mal jeany, vllt gehts dann. weil eigentlich stimmen die kommas, nur anfangs stand ein punkt statt nem komma. also.. vielleicht. großes Grinsen
_negel
Tut sich nix ... =/

edit: Danke Leute <3 Es geht smile Fragt mich nicht wie, aber jetzt gehts großes Grinsen
Dankesehr <3 smile

edit2:
Nehm alles zurück -.- großes Grinsen

User erstellen - tip top.
User bearbeiten - Nada.

SQL-DATABASE ERROR

Database error in WoltLab Burning Board: Invalid SQL: UPDATE bb1_userfields SET Array WHERE userid='1'
mysql error: 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 'WHERE userid='1'' at line 1
mysql error number: 1064
Date: 12.03.2010 @ 23:17
Script: /wbblite/acp/users.php?action=edit&userid=1&sid=
Referer: http://sonsofplunder.square7.ch/wbblite/...ction=show&sid=
Melli
statt
code:
1:
2:
   $db->unbuffered_query("UPDATE bb".$n."_users SET username='".addslashes($username)."',email='".addslashes(htmlspecialchars($email))."',groupid='$groupid',rankid='$rankid[rankid]',title='".addslashes(htmlspecialchars($title))."',usertext='".addslashes(htmlspecialchars($usertext))."',signature='".addslashes($signature)."',icq='".intval($icq)."',aim='".addslashes(htmlspecialchars($aim))."',yim='".addslashes(htmlspecialchars($yim))."',icon='".addslashes(htmlspecialchars($icon))."',msn='".addslashes(htmlspecialchars($msn))."',homepage='".addslashes(htmlspecialchars($homepage))."',birthday='".addslashes(htmlspecialchars($birthday))."',gender='".intval($gender)."',showemail='".intval($showemail)."',admincanemail='".intval($admincanemail)."',usercanemail='".intval($usercanemail)."',invisible='".intval($invisible)."',usecookies='".intval($usecookies)."',styleid='".intval($styleid)."',daysprune='".intval($daysprune)."',timezoneoffset='".addslashes(htmlspecialchars($default_timezoneoffset))."',dateformat='".addslashes(htmlspecialchars($dateformat))."',timeformat='".addslashes(htmlspecialchars($timeformat))."',emailnotify='".intval($emailnotify)."',receivepm='".intval($receivepm)."',emailonpm='".intval($emailonpm)."',pmpopup='".intval($pmpopup)."',umaxposts='".intval($umaxposts)."',showsignatures='".intval($showsignatures)."',showavatars='".intval($showavatars)."',showimages='".intval($showimages)."',nosessionhash='".intval($nosessionhash)."', blocked='".intval($blocked)."', avatarid = '".intval($avatarid)."' WHERE userid='$userid'",1);
   if($fieldvalues) $db->unbuffered_query("UPDATE bb".$n."_userfields SET ".$fieldvalues." WHERE userid='$userid'");


jweils ganz am schluss sind zwei mal WHERE-Abfragen. Dahinter muss jeweils folgen: userid = '".$userid."' statt nur '$userid'.
_negel
+sfz+ Ich komm mir schon ganz schlecht vor - ihr helft mir die ganze Zeit & es klappt nicht. =/

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /users/sonsofplunder/www/wbblite/acp/users.php on line 351
Melli
Ich frag mich grade weshalb da am Ende der Zeile eine ,1 steht.. aber setz dahinter, also vor die ) noch ein " und guck mal, obs dann geht. großes Grinsen
_negel
Hab ich mich auch schon gefragt großes Grinsen
Bleibt aber die gleiche Fehlermeldung... Augen rollen Augenzwinkern