Имею базу данных из CMS под названием DLE, в ней таблица dle_users, в которой находятся строки name и user_balance, в user_balance находится баланс пользователя и я проверяю выше ли он цены, если да то я вычитаю из баланса цену и отправляю это значение в бд. Но почему-то значение в бд не изменяется, но если передавать не переменную а текст или цифру все меняется. Попрошу не бить за кривой код или затупы, 2 неделю живу эти пхп и бд..
Проблема в том что я не могу проверить строку name на наличие переменной $user, я просто получаю ошибку
Fatal error: Uncaught mysqli_sql_exception: Unknown column 'Hexagon' in 'where clause'
PHP код:
<?php
$dblink = mysqli_connect('localhost', 'hexagon', 'password', 'hex-server'); // Соединяемся с базой
//$user = $member_id['name'];
$user = 'Hexagon';
$allow_to_buy = 0;
$current_monets = 0;
$price = 1;
$sql = mysqli_query($dblink, 'SELECT `name`, `user_balance` FROM `dle_users`');
while ($result = mysqli_fetch_array($sql))
{
if ($result['name'] == $user)
{
echo $result['name'];
$current_monets = $result['user_balance'];
echo $current_monets;
}
}
if ($current_monets >= $price)
{
$allow_to_buy = 1;
echo 'Покупка совершена!';
$current_monets-=$price;
echo $current_monets;
mysqli_query($dblink, 'UPDATE `dle_users` SET `user_balance` = '.$current_monets.' WHERE `name` = '.$user.'');
$sql2 = mysqli_query($dblink, 'SELECT `name`, `user_balance` FROM `dle_users`');
while ($result = mysqli_fetch_array($sql2)) {
echo '<br>';
echo $result['name'];
echo $result['user_balance'];
}
}
else
echo 'Недостаточно монет';
?>