I have a slight problem. I am trying to create a mail service for a new game which I have started creating recently. Each user that registers also creates a table for their mail. As the usernames are variable and the table name is the username, I need to insert messages, subjects and "froms" into this variable table.

I am using the following code:

$to = $_SESSION["to"];
$subject = $_SESSION["subject"];
$message = $_SESSION["message"];
$from = $_SESSION["username"];
echo "To: $to<br>";
echo "Subject: $subject<br>";
echo "Message: $message<br>";
echo "From: $from<br>";
include 'connection.php';
if ($to <> "") {
	if ($subject <> "") {
		if ($message <> "") {
			$rsusers = $conn->Execute("INSERT INTO $to (subject, message, from) VALUES('$subject', '$message', '$from')");

The problem is that it will not accept $to as the table name - it just comes up with some nasty error about the syntax of my insert statement. Can anyone help me on this, please?

Recommended Answers

All 7 Replies

if you are using sql server, try running profiler to make sure that your php page is actually sending the script correctly

if you are using sql server, try running profiler to make sure that your php page is actually sending the script correctly

I don't know what a profiler is - could you explain how to run it please? Also, I MAY have just figured out what it is that is wrong as it has happened on a couple of pages now. I am accessing several tables at the same time (or at least trying to). Is it possible to extract data or insert data into several tables at the same time or do you have to close one before opening another one?


look under start>programs>microsoft sql server>profiler

yes you can extract data from more than one table at a time but I don't know of anyway to insert into more than one table at a time

I am not exactly trying to insert into more that one table at ONE time - I didn't exactly make that clear. I am using several SQL statements in a row to insert into several tables.

that should be fine. Did you get profiler to work?

No, I couldn't find it - I am using Dreamweaver for all my webpages and just use SQL code by reading out of a book or searching on the internet.

The error it comes up with is as follows:

Fatal error: Uncaught exception 'com_exception' with message 'Source: Microsoft OLE DB Provider for ODBC Drivers
Description: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.' in D:\Websites\ClarkeyBoy\wwwroot\gametrialversion\sendmail.php:76 Stack trace: #0 {main} thrown in D:\Websites\ClarkeyBoy\wwwroot\gametrialversion\sendmail.php on line 76

I have been trying to find a solution all evening but have got nowhere.

I have sort of managed to fix it - but now, whenever I go to the view mail page I get the following error:

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.

I have now solved the CGI error but I am back to the original error now - thus not allowing me to insert records into any user mail tables.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, learning, and sharing knowledge.