Я изучаю php и mysql и теперь столкнулся с проблемой.Как извлечь данные из таблицы A, используя данные из таблицы B в моем сценарии автозапуска?
Я использую скрипт autosuggestion php/javascript, который изначально использует вход пользователя в форме html, использует javascript для отправки пользовательского ввода в файл php, где он ищет через базу данных с помощью «LIKE «query command», а затем возвращает список html с элементами списка, содержащими данные «name», найденные в запросе.
Теперь на мой вопрос: У меня есть две таблицы в моей базе данных, wp_terms и wp_term_taxonomy (см. Ниже иллюстрацию). В настоящее время запрос просматривает все записи в таблице «wp_terms» и выбирает запись «name». Но я хочу добавить какой-то фильтр. Я хочу только получить имена записей, которые имеют целое число «2» как «родительский».
Я думаю, что aproach для этого будет искать через «wp_term_taxonomy», сохраните «term_id» из записей с целым числом «2» в качестве родительского. Затем введите другой запрос, который проходит через таблицу «wp_terms» и выводит «имена» сохраненных «term_id».
Я не знаю, был ли это правильный подход или нет. Я пробовал уже несколько дней без успеха и очень ценю некоторую помощь.
базы данных таблицы иллюстрации:
Мой autosuggest.php код. Это были волшебство происходит:
<?php
$db_host = 'localhost';
$db_username = 'user';
$db_password = 'passw';
$db_name = 'db';
$db = new mysqli($db_host, $db_username ,$db_password, $db_name);
if(!$db) {
echo 'Could not connect to the database.';
} else {
if(isset($_POST['queryString'])) {
$queryString = $db->real_escape_string($_POST['queryString']);
if(strlen($queryString) >0) {
$query = $db->query("SELECT name FROM wp_terms WHERE name LIKE '$queryString%' LIMIT 10");
if(mysqli_num_rows($query) > 0) {
if($query) {
echo '<ul>';
while ($result = $query ->fetch_object()) {
echo '<li onClick="fill(\''.addslashes($result->name).'\');">'.$result->name.'</li>';
}
echo '</ul>';
} else {
echo 'OOPS we had a problem :(';
}
} else {
echo '<ul>';
echo '<span style="color:#0196E3";>'.$queryString.'</span> no matches found.';
echo '</ul>';
}
} else {
// do nothing
}
} else {
echo 'There should be no direct access to this script!';
}
}
?>
Я отредактировал ваше сообщение, чтобы содержать изображение, на которое вы ранее ссылались. – Leng