homepage Welcome to WebmasterWorld Guest from 54.204.94.228
register, free tools, login, search, pro membership, help, library, announcements, recent posts, open posts,
Become a Pro Member

Home / Forums Index / Code, Content, and Presentation / PHP Server Side Scripting
Forum Library, Charter, Moderators: coopster & jatar k

PHP Server Side Scripting Forum

    
PHP and mySQL Insert problem
ukgimp

WebmasterWorld Senior Member 10+ Year Member



 
Msg#: 419 posted 3:05 pm on May 31, 2002 (gmt 0)

Hello

I know i am connecting to the DB, as i have run a script to check.

On one page a pass form variables to another page. The variable pass ok as i
print them out to make sure. I have an SQL instert which I cannot get to
work. Any ideas appreciated.

CODE

<?php
$sql = "INSERT INTO MMUser (UserPrivilege,
UserUsername,
UserPassword,
UserName,
UserEmail,
UserPhone)
VALUES ('$UserPrivilege',
'$UserUsername',
'$UserPassword',
'$UserName',
'$UserEmail',
'$UserPhone')";
?>

 

Nick_W

WebmasterWorld Senior Member nick_w us a WebmasterWorld Top Contributor of All Time 10+ Year Member



 
Msg#: 419 posted 4:11 pm on May 31, 2002 (gmt 0)

Try this:
$sql = "INSERT INTO MMUser VALUES(UserPrivilege,
UserUsername, etc

Nick

lorax

WebmasterWorld Administrator lorax us a WebmasterWorld Top Contributor of All Time 10+ Year Member



 
Msg#: 419 posted 4:16 pm on May 31, 2002 (gmt 0)

Make sure your the letter case of the field names in your query match those in your db.

Lisa

WebmasterWorld Senior Member 10+ Year Member



 
Msg#: 419 posted 4:30 pm on May 31, 2002 (gmt 0)

Did you figure it out? Must be letter case because your query is well formatted.

ukgimp

WebmasterWorld Senior Member 10+ Year Member



 
Msg#: 419 posted 5:49 pm on May 31, 2002 (gmt 0)

Thanks for the answers.

Unfortunately I will be unable to try it out for 10 days as i got a holiday. Still sad enough to check if I have any responses from home though.
:-)

Cheers

Nick_W

WebmasterWorld Senior Member nick_w us a WebmasterWorld Top Contributor of All Time 10+ Year Member



 
Msg#: 419 posted 7:02 pm on May 31, 2002 (gmt 0)

I think I speak for everyone when I say:

Sheeeeeeesh!

:(:(:(:(:(:(:(:(

scotty

10+ Year Member



 
Msg#: 419 posted 9:03 am on Jun 1, 2002 (gmt 0)

ukgimp,

Do you have the error message from the mysql function call? Usually the error messages are quite verbose, and they help the development quite a lot.

Another cause I can think of is escaping the invalid characters in the SQL statement, since you basically put the variables straight into the SQL statement. Some character, especially the single quote (') should not be used because it is in conflict with the single quote around the string. You might need to replace it with two single quotes ('') to escape it. I'll suggest you to consider using PEAR or ADODB, which supports parameters in the SQL statement, and that really makes things easier and more portable.

ukgimp

WebmasterWorld Senior Member 10+ Year Member



 
Msg#: 419 posted 4:55 pm on Jun 1, 2002 (gmt 0)

Scotty

I dont actually get an error. The parameters are passed ok, but are just not inserted.

I will look into the " and ''s and inform on my findings.

Nick - Sorry mate, what can I say or do. :-)

Nick_W

WebmasterWorld Senior Member nick_w us a WebmasterWorld Top Contributor of All Time 10+ Year Member



 
Msg#: 419 posted 6:12 pm on Jun 1, 2002 (gmt 0)

hehe, don't worry I'm just a grumpy old bugger.

Try running that query from the command line in MySQL

Nick

lorax

WebmasterWorld Administrator lorax us a WebmasterWorld Top Contributor of All Time 10+ Year Member



 
Msg#: 419 posted 7:10 pm on Jun 1, 2002 (gmt 0)

I dont actually get an error.

You won't see the error without asking for it - unless it's a fatal error. Put this code immediately following your query.

echo "the db error is: ".mysql_error($sql);

This will return any error the SQL statement incurred while executing so you can see them. I put some text before the error "the db error is..." just so I know the command executed fine.

ukgimp

WebmasterWorld Senior Member 10+ Year Member



 
Msg#: 419 posted 8:51 am on Jun 10, 2002 (gmt 0)

THE SOLUTION

It appears i missed out a couple of bits of code

<$pResult=mysql_query( $sql , $db_connection );>
Which I am reliably informed sends the query to MySQL.

There was also a numerical auto increment field that was messing things up during my insert script.

Thanks all for your help.

Richard

Global Options:
 top home search open messages active posts  
 

Home / Forums Index / Code, Content, and Presentation / PHP Server Side Scripting
rss feed

All trademarks and copyrights held by respective owners. Member comments are owned by the poster.
Home ¦ Free Tools ¦ Terms of Service ¦ Privacy Policy ¦ Report Problem ¦ About ¦ Library ¦ Newsletter
WebmasterWorld is a Developer Shed Community owned by Jim Boykin.
© Webmaster World 1996-2014 all rights reserved