Вы должны поставить my_log
сразу после INSERT INTO
:
<?php
$_SESSION['compare_hash'] = "270043ae1526e44967889b4382ff69fd";
$log_session = $_SESSION['compare_hash'];
$log_ip = $_SERVER['REMOTE_ADDR'];
$log_vrijeme = date("Y-m-d H:i:s");
$log_model = "1402";
$con = mysqli_connect("localhost","user","password","databse");
$sql = "
INSERT INTO my_log (log_session,log_ip,log_vrijeme,log_model)
VALUES ('$log_session','$log_ip','$log_vrijeme','$log_model')
";
$rez = mysqli_query($con, $sql) or die(mysqli_error($con)."<br>$sql");
mysqli_close($con);
?>
Однако у вашего кода есть несколько недостатков, я опишу их чуть позже.
1. Не передавайтенеэкранированные переменные в запросе
Пока у вас нет другого пути.Использование mysqli_real_escape_string($con, $your_var)
для предотвращения внедрения SQL-кода и использование PDO сделало бы его еще лучше.
2. Используйте синтаксис HEREDOC для обеспечения согласованности запросов при будущих изменениях
Таким образом, даже если кто-то из вас введет "
в запросон все равно будет работать, как и ожидалось.
3. Пропустите закрывающий тег в конце ваших файлов PHP, если у вас нет содержимого ниже
Это предотвратит неожиданные ошибки.
<?php
$_SESSION['compare_hash'] = "270043ae1526e44967889b4382ff69fd";
$con = mysqli_connect("localhost","user","password","databse");
$log_session = mysqli_real_escape_string($con, $_SESSION['compare_hash']);
$log_ip = mysqli_real_escape_string($con, $_SERVER['REMOTE_ADDR']);
$log_vrijeme = mysqli_real_escape_string($con, date("Y-m-d H:i:s"));
$log_model = mysqli_real_escape_string($con, "1402");
$sql = <<<SQL
INSERT INTO my_log (log_session,log_ip,log_vrijeme,log_model)
VALUES ('${log_session}','${log_ip}','${log_vrijeme}','${log_model}')
SQL;
$rez = mysqli_query($con, $sql) or die(mysqli_error($con)."<br>$sql");
mysqli_close($con);