|
| SQL syntax error Fra : cds |
Dato : 10-02-04 21:13 |
|
jeg får følgende fejl "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 '0000', '1', '1', '1', '5000', '3', '')' at line 1"
hvad gør jeg forkert ???
addslashes($UserID );
addslashes($Mailbox);
addslashes($FullName);
addslashes($MailDir);
addslashes($Password);
addslashes($IsForwarding);
addslashes($AllowAccess);
addslashes($ApplyQuotas);
addslashes($MaxDiskSpace);
addslashes($DomainID);
addslashes($oprettetaf);
include("db_ind1.inc");
$add_profil = mysql_query("INSERT INTO userlist (Mailbox,
FullName, MailDir, Password, IsForwarding, AllowAccess, ApplyQuotas,
MaxDiskSpace, DomainID, oprettetaf)" . "VALUES ('$email', '$FullName',
'C:\MDAEMON\USERS\test.dk\$email\', '$password', '1', '1', '1', '5000', '3',
'$opretteaf')") or die(mysql_error());
og db se sådan ud
CREATE TABLE `userlist` (
`UserID` int(11) NOT NULL auto_increment,
`Mailbox` varchar(60) NOT NULL default '',
`FullName` varchar(100) NOT NULL default '',
`MailDir` varchar(255) NOT NULL default '',
`Password` varchar(32) NOT NULL default '',
`AutoDecode` tinyint(1) NOT NULL default '0',
`IsForwarding` tinyint(1) NOT NULL default '0',
`AllowAccess` tinyint(1) NOT NULL default '1',
`AllowChangeViaEmail` tinyint(1) NOT NULL default '0',
`KeepForwardedMail` tinyint(1) NOT NULL default '0',
`HideFromEveryone` tinyint(1) NOT NULL default '0',
`EncryptMail` tinyint(1) NOT NULL default '0',
`ApplyQuotas` tinyint(1) NOT NULL default '1',
`EnableMultiPop` tinyint(1) NOT NULL default '0',
`CanModifyGAB` tinyint(1) NOT NULL default '0',
`CalendarOnly` tinyint(1) NOT NULL default '0',
`MaxMessageCount` int(11) NOT NULL default '0',
`MaxDiskSpace` int(11) NOT NULL default '0',
`DomainID` int(11) NOT NULL default '0',
`oprettetaf` int(11) NOT NULL default '0',
PRIMARY KEY (`UserID`),
UNIQUE KEY `Mailbox` (`Mailbox`,`DomainID`)
) TYPE=MyISAM AUTO_INCREMENT=23 ;
| |
Claus Abildgaard Chr~ (10-02-2004)
| Kommentar Fra : Claus Abildgaard Chr~ |
Dato : 10-02-04 21:46 |
|
cds wrote:
> jeg får følgende fejl "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 '0000', '1', '1', '1', '5000', '3', '')' at line 1"
>
<snip en masse>
> $add_profil = mysql_query("INSERT INTO userlist (Mailbox,
> FullName, MailDir, Password, IsForwarding, AllowAccess, ApplyQuotas,
> MaxDiskSpace, DomainID, oprettetaf)" . "VALUES ('$email', '$FullName',
> 'C:\MDAEMON\USERS\test.dk\$email\', '$password', '1', '1', '1', '5000', '3',
> '$opretteaf')") or die(mysql_error());
<snip lidt tabel definition>
> `oprettetaf` int(11) NOT NULL default '0',
> PRIMARY KEY (`UserID`),
> UNIQUE KEY `Mailbox` (`Mailbox`,`DomainID`)
> ) TYPE=MyISAM AUTO_INCREMENT=23 ;
Du har erklæret 'oprettetaf' feltet som NOT NULL. Hvis du kigger i
fejlbeskeden, står der ingenting på sidste plads hvor 'oprettetaf' burde
have stået. Står der noget i $oprettetaf variablen?
Mvh,
Claus
| |
Jens Gyldenkærne Cla~ (10-02-2004)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 10-02-04 22:40 |
|
cds skrev:
> jeg får følgende fejl "You have an error in your SQL syntax.
[snip]
> $add_profil = mysql_query("INSERT INTO userlist
> (Mailbox,
Så vidt jeg kan se opbygger du databasekaldet via php. Hvis du vil
finde fejlen, er det en god ide at udskrive den resulterende sql-
sætning. Jeg er ikke php-mand, så jeg kan ikke sige præcis hvordan
det gøres der, men det ved de sikkert i php-gruppen. Men teknikken
går ud på at gemme sql-kaldet i en variabel og udskrive den. Jeg
vil gætte på at du kan gøre således:
$sql = "INSERT into ....."
$add_profil = mysql_query($sql) or die($sql);
Til forskel fra din nuværende kommando, vil ovenstående udskrive
hele sql-kaldet. Det er nogle gange lettere at fejlfinde på.
--
Jens Gyldenkærne Clausen
»Diplomatiet består netop i, at de gamle kommatister kan få lov til
at tro, at de har vundet. Men i virkeligheden har de tabt.«
Ole Togeby i Information
| |
Bjarne Jensen (10-02-2004)
| Kommentar Fra : Bjarne Jensen |
Dato : 10-02-04 22:42 |
|
cds wrote:
> "VALUES (..........'C:\MDAEMON\USERS\test.dk\$email\',
hmmmm, jeg er ik specielt stiv i den slags, men e der ik noget med at \
skal escapes med en ekstra \ - altså \\ ?
Mvh
Bjarne Jensen
| |
cds (10-02-2004)
| Kommentar Fra : cds |
Dato : 10-02-04 22:57 |
|
"Bjarne Jensen" <bjarne@marilu.org> skrev i en meddelelse
news:4029502f$0$95018
> skal escapes med en ekstra \ - altså \\ ?
har jeg prøvet uden held
mvh.
cds
| |
cds (10-02-2004)
| Kommentar Fra : cds |
Dato : 10-02-04 23:17 |
|
"Bjarne Jensen" <bjarne@marilu.org> skrev i en meddelelse
news:4029502f$0$95018$edfadb0f@dread11.news.tele.dk...
> cds wrote:
>
> skal escapes med en ekstra \ - altså \\ ?
Hej Bjarne
Du havde næsten ret det skulle bare være \\\\
Tak for hjælpen
mvh.
cds
| |
Kristian Thy (10-02-2004)
| Kommentar Fra : Kristian Thy |
Dato : 10-02-04 23:19 |
|
cds uttered:
> MaxDiskSpace, DomainID, oprettetaf)" . "VALUES ('$email', '$FullName',
Det bliver, når strengene bliver konkateneret, til:
» MaxDiskSpace, DomainID, oprettetaf)VALUES ('$email', '$FullName', «
Prøv at sætte et mellemrum mellem ) og VALUES.
\\kristian
--
"Wars are only carried on, and desperate enterprises carried out,
owing to the lack of imagination amongst the rank and file."
--Ellis Ashmead-Bartlett, at Gallipoli 1915
| |
|
|