Эй, ребята, этот вопрос является продолжением моего вопроса Вот. Я создал функцию подсчета голосов по столбцам для конкурса, который мы проводим ежегодно. Проблема в том, что с текстовыми полями люди не всегда пишут вещи правильно или используют пунктуацию одинаково, и обратные слеши в конечном итоге включаются в базу данных чаще, чем должны (что заставляет меня задуматься, иногда ли они получаются двойными сбежал или что-то, но уже слишком много записей)
Во всяком случае, моя функция выглядит следующим образом. Я задаюсь вопросом, есть ли способ убрать это. Например, если один персонаж выключен, тогда вполне безопасно предположить, что это одно и то же место или что-то в этом роде.
function get_results_for($column) {
global $dbc;
$rowcount = "";
//This portion fetches unique entries that aren't empty
$query = "SELECT DISTINCT $column ";
$query .= "FROM newbob ";
$query .= "WHERE $column != '' ";
$query .= "ORDER BY $column ASC";$result = mysqli_query($dbc, $query);
if (!$result){
die ("Database query failed.");
}
//and I want this portion to count how many there are that are the same, and
//just add it next to it.
while($entries = mysqli_fetch_assoc($result)) {
foreach ($entries as $entries) {
echo removeslashes($entries);
$entries2 = mysqli_real_escape_string($dbc,$entries); }
$query2 = "SELECT $column ";
$query2 .= "FROM newbob ";
$query2 .= "WHERE $column LIKE '%$entries2%'";
$result2 = mysqli_query($dbc, $query2);
if (!$result2){
die ("<br>Database query failed.");
}
$rowcount = mysqli_num_rows($result2);
echo " (" . $rowcount . ")<br>";
}
}
Вот скриншот того, что я получаю, если это поможет прояснить ситуацию.
Задача ещё не решена.
Других решений пока нет …