У меня есть 2 таблицы в базе данных mysql: пользователи и домашние животные .В таблице пользователей есть поле, которое содержит разделенный точкой с запятой список домашних животных, которые есть у пользователя (pet_ids = 1; 2; 3; 4;).Эти идентификаторы соответствуют уникальным идентификаторам (ключам) в таблице питомцев, которые содержат имя питомца (1 = рекс, 2 = голди, 3 = писк, 4 = пузырь).
Я хочу представить список этихдомашние животные на странице PHP в алфавитном порядке, но сохраняют идентификатор имени домашнего животного, чтобы передать его в качестве переменной на другую страницу при нажатии на имя домашнего животного.
Какой самый эффективный способ добиться этого.
Пока что список, который я создаю, не в алфавитном порядке, а для того, чтобы домашние животные были добавлены -
Функции длязапрос к базе данных
function getUserPets($user_id) {
$query= "SELECT pet_ids FROM users WHERE id='$user_id'";
$result = @mysql_query ($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
while($row = mysql_fetch_array($result)) {
$the_pets = $row['pet_ids'];
}
return $the_pets; //1;2;3;4;
}
function getPetName($id) {
$name = "";
$query= "SELECT name FROM pets WHERE id='" . $id . "' ";
$result = @mysql_query ($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
while($row = mysql_fetch_array($result)) {
$name = $row['name'];
}
return urldecode($name);
}
код для создания списка ...
$petstring = getUserPets($userid);
$petsarray = explode(";", $petstring);
foreach ($petsarray as $pet_id) {
echo("<li><h4><a href=\"pet.php?id=$pet_id\">" . writeListPetName($pet_id) . "</a></h4></li>");
}
Какой самый эффективный способ получить алфавитный список - мне нужно сохранить структуру базы данныхто же самое.