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 7 |
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 7 |
tyler.watkins |
Apr 10 2012, 03:24 PM
Post
#1
|
Novice Group: Members Posts: 27 Joined: 6-March 12 Member No.: 16,654 |
<?php
$mysql_host = "********"; $mysql_database = "********"; $mysql_user = "*************"; $mysql_password = "*********"; $fname=$_POST['fname']; $lname=$_POST['lname']; $user=$_POST['username']; $password=$_POST['password']; $verify=$_POST['verify']; $email=$_POST['email']; $country=$_POST['country']; $month=$_POST['month']; $day=$_POST['day']; $year=$_POST['year']; $con = mysql_connect( $mysql_host, $mysql_user, $mysql_password ); if ( !$con ) { die( 'Could not connect: ' . mysql_error() ); } mysql_select_db( "$mysql_database",$con ); $table = "CREATE TABLE `$user` ( `fname` varchar(30), `lname` varchar(30), `username` varchar(30), `password` varchar(30), `email' varchar(30), 'country' varchar(30), 'month' varchar(30), 'day' int(2), 'year' int(4), PRIMARY KEY '$user' )" ; echo "Table Created!"; mysql_query($table,$con) or die (mysql_error()); mysql_close($con); ?> Above is my php code. I am trying to make a login system. I keep getting this error message "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 7" I have no idea what this means because i have no code on line 7. Any help is greatly appreciated. Also if you have any suggestions, please pm me. The form for this php code is on the page "http://blocks.netne.net/register.html " Please visit and give me any suggestions as to what to do! Thanks! |
Ephraim F. Moya |
Apr 10 2012, 08:46 PM
Post
#2
|
Advanced Member Group: Members Posts: 167 Joined: 2-September 07 From: New Mexico Member No.: 3,702 |
<?php $mysql_host = "********"; $mysql_database = "********"; $mysql_user = "*************"; $mysql_password = "*********"; $fname=$_POST['fname']; $lname=$_POST['lname']; $user=$_POST['username']; $password=$_POST['password']; $verify=$_POST['verify']; $email=$_POST['email']; $country=$_POST['country']; $month=$_POST['month']; $day=$_POST['day']; $year=$_POST['year']; $con = mysql_connect( $mysql_host, $mysql_user, $mysql_password ); if ( !$con ) { die( 'Could not connect: ' . mysql_error() ); } mysql_select_db( "$mysql_database",$con ); $table = "CREATE TABLE `$user` ( `fname` varchar(30), `lname` varchar(30), `username` varchar(30), `password` varchar(30), `email' varchar(30), 'country' varchar(30), 'month' varchar(30), 'day' int(2), 'year' int(4), PRIMARY KEY '$user' )" ; echo "Table Created!"; mysql_query($table,$con) or die (mysql_error()); mysql_close($con); ?> This line: $user=$_POST['username']; is the first error. You rename username to user. This error cascades to make the rest of the program not work. Note that this error is valid code, the error is with your use. Note also that you're confused with a variable ($v) and a literal string (v) even with the same name. This is the first cascade error: $table = "CREATE TABLE `$user` The name of the table is not user as you seem to want but some name that $user contains. This is the next error cluster: `email' varchar(30), 'country' varchar(30), 'month' varchar(30), 'day' int(2), 'year' int(4), PRIMARY KEY '$user' Note that you use an apostrophe instead of a backtick. The PRIMARY KEY statement belongs with the definition for user (which doesn't exist). You need to pay more attention to all the nitty gritty. I didn't go into any other errors. |
Lo-Fi Version | Time is now: 26th April 2024 - 02:15 PM |