У меня есть <?php include 'stats.php'; ?>
на каждой странице моего сайта. в файле stats.php
есть запрос SQL Insert, который вставляет данные в таблицу в моей базе данных.Вставка нескольких строк в базу данных
По какой-то причине при посещении только одной страницы он вставляет 4 строки в базу данных - есть только одна команда SQL.
почему бы это делать это ... ниже ALL код на файл stats.php
<?php
$activity_history_sql=
"INSERT into user_activity_history (user_seq, user, timestamp, ip_address, user_request_uri,
user_script_filename, user_script_uri, user_script_url, user_script_name, user_php_self)
values ('".$_SESSION["domain.co.uk"]["sequence"]."',
'".$_SESSION["domain.co.uk"]["forename"].' '.$_SESSION["domain.co.uk"]["surname"]."',
'".date("Y-m-d H:i:s")."',
'".$_SERVER["REMOTE_ADDR"]."',
'".$_SERVER["REQUEST_URI"]."',
'".$_SERVER["SCRIPT_FILENAME"]."',
'".$_SERVER["SCRIPT_URI"]."',
'".$_SERVER["SCRIPT_URL"]."',
'".$_SERVER["SCRIPT_NAME"]."',
'".$_SERVER["PHP_SELF"]."') ";
$activity_history_rs=mysql_query($activity_history_sql,$conn) or die(mysql_error());
?>
Возможно, вы включаете файлы, которые включают 'stats.php'. Используйте 'require_once' вместо' include'. – rightfold
Кроме того, ваш код уязвим для SQL-инъекции. См. [_Как я могу предотвратить SQL-инъекцию в PHP? _] (Http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php). Не говоря уже о том, что 'mysql_ *' набор функций устарел. – rightfold
Предупреждение: расширение mysql устарело от PHP 5.5.0 и будет удалено в будущем. Вместо этого [MySQLi] (http://www.php.net/manual/en/book.mysqli.php) или [PDO_MySQL] (http://www.php.net/manual/en/ref.pdo- mysql.php). Не используйте mysql для разработки нового кода. – bansi