Первое, что я хотел бы сделать, это удалить всю пользовательскую обработку ошибок, чтобы убедиться, что она действительно подключается. Либо так, либо измените запрос все вместе. Кроме того, обновление до mysqli
не может повредить. Поэтому сначала попробуйте изменить соединение:
DEFINE ('DB_USER', 'root');
DEFINE ('DB_PASSWORD', '');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'tags');
$dbc = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if ($dbc -> connect_error) {
echo "Could not select the database!\n MySQL Error: ".$dbc -> connect_error;
include ('./includes/footer.htm');
exit();
}
Если вы не получили сообщение об ошибке выше, вы подключены. Затем вставьте фиктивный запрос примерно так:
$test_query = "SELECT * FROM tags WHERE count = 1";
$test_results = $dbc->query($test_query);
Затем вы можете добавить простую проверку, чтобы перейти к реальному запросу, например:
if($test_results -> num_rows > 0) {
$tag = mysql_real_escape_string($_POST['tag']);
$update_query = "UPDATE tags SET count = count+1 WHERE tag = '$tag'";
$dbc -> query($update_query);
Затем выведите ошибку, если она существует для каждого запроса:
echo ($dbc -> error) ? $dbc -> error : "";
if($dbc -> affected_rows < 1 ) {
$insert_query = "INSERT INTO tags (tag,count) VALUES('$tag',1)";
$dbc -> query($insert_query);
echo ($dbc -> error) ? $dbc -> error : "1 record added";
}
}
$dbc -> close();