Markus JäNtti wrote: > I'm working myself through Julie C. Meloni's book "PHP" and now I'm > stuck at chapter 12. > My script gives me this error: You have an error in your SQL syntax > near '()' at line 1 > even tho I've even tried replacing my own work with the file from the > book's companion-files. > I'd be very happy if someone would take the time to look through this > and tell me what the problem might be. Hard to move forward when I > don't understand this. >
The $_POST array exists of keys and values. The keys are strings (in the case of $_POST), so you'll have to access them like strings. Use $_POST['table_name'] instead of $_POST[table_name]. The same goed also for $_POST[field_name], $_POST[field_type] and $_POST[field_length]. HTH Erwin > <? > //indicate the database you want to use > $db_name ="testDB"; > > //connect to database > $connection = @mysql_connect("localhost","john","doe99") or > die(mysql_error()); > $db = @mysql_select_db($db_name,$connection) or die(mysql_error()); > > //start creating the SQL statement > $sql ="CREATE TABLE $_POST[table_name] (("; > > //continue the SQL statement for each new field > for ($i =0;$i < count($_POST[field_name]);$i++){ > $sql .= $_POST[field_name][$i]."".$_POST[field_type][$i]; > if ($_POST [field_length][$i] != "") { > $sql .= "(".$_POST [field_length][$i]."),"; > } else { > $sql .= ","; > } > } > > //clean up the end of the string > $sql = substr($sql,0,-1); > $sql .= ")"; > > //execute the query > $result = mysql_query($sql,$connection) or die(mysql_error()); > > //get a good message for display upon success > if ($result) { > $msg ="<P>".$_POST[table_name]." has been created!</P>"; > } > > ?> > > <HTML> > <HEAD> > <TITLE>Create a Database Table:Step 3</TITLE> > </HEAD> > <BODY> > <h1>Adding table to <? echo "$db_name"; ?>...</h1> > > <? echo "$msg"; ?> > > </BODY> > </HTML> -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php