У меня есть оператор вставки, который я запрашиваю в БД.
$notes_sql = 'INSERT into notes SET
order_id = "'.$_GET['order_id'].'",
date_added = "'.$date_added.'",
note_message = "'.$_SESSION['note_message'].'"';
$notes_result = $conn->query($notes_sql) or die(mysqli_error($conn));
Я знаю, что оператор sql правильный, потому что когда я пытаюсь вывести его и запустить этот оператор echo'd в phpMyadmin,он вставляет его нормально.
Когда я пытаюсь запустить оператор вставки, я получаю следующую ошибку:
Команда INSERT запрещена пользователю 'ideapale_amquery' @ 'localhost' для таблицы 'Примечания '
Строка 74 - это строка кода, которая запрашивает оператор.
Я также знаю, что правильно подключаюсь к БД через включенный файл connection.php, посколькуЯ использую переменные из этого включенного файла на странице, над которой я работаю.
Я предполагаю, что я как-то неправильно подключаюсь к БД, но я не уверен, что это такое.Я скопировал код для этой страницы с другой страницы, которая работает нормально, поэтому я не понимаю, почему она не работает.
Почему моя вставка не работает в php?
***** ОБНОВЛЕНИЕ *****
Это мой сценарий подключения:
function dbConnect($type) {
if($type == 'query'){
$user = 'ideapale_amquery';
$pwd = 'xxxxxxxxxxx';
} else if($type == 'admin') {
$user = 'ideapale_amadmin';
$pwd = 'xxxxxxxxxxxx';
} else {
exit('Unrecognized connection type');
}
$conn = new mysqli('localhost', $user, $pwd, 'ideapale_offorders') or die('Cannot open database');
return $conn;
}
Вот как я подключаюсь к сценарию подключения со страницы, на которой я нахожусь:
$conn = dbConnect('admin');
Я подключаюсь к БД с правами администратора, поэтому не понимаю, почему он думает, что я хочу использовать имя пользователя 'amquery'.