PHP MySQLi isn't letting me alter a table (adding a new column)
Well thats pretty much it.
This is my query:
$query = 'ALTER TABLE permissions ADD '.$name.' INT NOT NULL DEFAULT \'0\'';
Where $name is already checked to exist with only lower case alpha letters, and not more than 20 length. Im just starting this out with very simple names.
The next 4 lines of code after that one are:
if($stmt = $db -> prepare($query))
{
$success = $stmt -> execute();
$stmt -> close();
if(!$success)
echo 'ERROR: Unsuccessful query: ',$db->error,PHP_EOL;
}
And I get back, every time
ERROR: Unsuccessful query:
And no error message. Is there a way to get more error messages so I can see what is failing? I can add new columns through phpmyadmin, but that really doesnt help me at all.
The $db is fine, i do lots of stuff before and after this one section. It is only adding new column to the table that fails.
- side question: prepare() rejected my query every time 开发者_如何转开发when i tried to make those 2 variables, the $name and the 0 value as ? ? prepared statement values. Thats why they are in the real query and not bound later. If i could change that too I would like that.
Try to replace;
$db->error to $stmt->error
And put this before the close().
worth checking you're not trying to use a column or table name that is 'reserved'. for example you cant have a col called 'lon' or 'host'
精彩评论