Я писал сценарий для отображения имен пользователей на основе того, назначен ли им четный или нечетный идентификатор комментария. Он вызывает данные из двух разных таблиц в одной базе данных. Вот таблица данных:Почему этот скрипт не работает? (нечетное/четное)
Таблица «комментарии» содержит столбцы commentid, tutorialid, name, date: Таблица «winners» имеет пулы столбцов, pool2, pool3, pool4, pool5, pool6, pool7. В «комментариях» таблицы есть несколько строк, которые обновляются через пользовательский ввод. Таблица «победители» имеет только 1 строку с числами, которые генерируются случайным образом ежедневно.
Первая часть скрипта, которая отображает «Результат 1» и «Результат 2», работает правильно. Часть, которая не работает, является частью, вызывающей имена пользователей. Я только хочу отображать имена пользователей, которые обрабатываются с результатом, который отображается IE, если выбрано Result 1, тогда я хочу, чтобы имена пользователей отображались даже с «комментариями».
<?php
$db = mysql_connect('localhost', 'username', 'pass') or die("Database error");
mysql_select_db('dbname', $db);
$query = "SELECT pool FROM winners";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
if ($row['pool'] % 2) {
echo "<h4>Result 1</h4>";
$names = get_names(1);
foreach($names as $name) {
echo $name . "<br/>";
}
} else {
echo "<h4>Result 2</h4>";
$names = get_names(0);
foreach($names as $name) {
echo $name . "<br/>";
}
}
function get_names($pool_result)
{
$name_array = array();
$query = "SELECT * FROM comments where mod('commentid',2) = $pool_result";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) {
array_push($name_array, $row['name']);
}
return $name_array;
}
?>
Может ли кто-нибудь понять, почему это не работает?
Вы подключения к базе данных в два раза ... – Borealid
лол, ты прав. Я исправил это, но он все еще не решает мою проблему. – user1206214