Вы можете использовать Looper
для отправки сообщения Toast
. Пройдите эту ссылку для получения более подробной информации.
public void showToastInThread(final Context context,final String str){
Looper.prepare();
MessageQueue queue = Looper.myQueue();
queue.addIdleHandler(new IdleHandler() {
int mReqCount = 0;
@Override
public boolean queueIdle() {
if (++mReqCount == 2) {
Looper.myLooper().quit();
return false;
} else
return true;
}
});
Toast.makeText(context, str,Toast.LENGTH_LONG).show();
Looper.loop();
}
, и он вызывается в вашем потоке. Контекст может быть Activity.getContext()
получить из Activity
, который вы должны показать тост.
Два способа сделать это:
Во-первых, PHP без ajax-метода: Должны быть две формы. Одна с первой выпадающей, которая содержит данные, предварительно заполненные с db ... Один раз пользователь отправляет эту форму (т. е. отправляет javascript или традиционный щелчок кнопки отправки), что данные могут быть оценены по сравнению с содержимым запросов запроса, передавая это как значение ... Данные, возвращаемые из инструкции SELECT, затем повторно отображаются в текстовом поле другой формы на той же странице ..
Во-вторых, используйте ajax для выполнения POST вместо использования двух формного подхода, который будет быстрее и эффективнее ..
Вот рабочий пример извлечения информации с помощью ajax: (это использует jQuery)
<!DOCTYPE HTML>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
</head>
<body>
<div>
<select id="myselect">
<option>---</option>
<option>Milk</option>
<option>Coffee</option>
<option>Tea</option>
</select>
</div>
<div>
<textarea id="result"></textarea>
</div>
<script>
$(document).ready(function()
{
$('#myselect').change(function()
{
var selected = $(this).find(':selected').html();
$.post('http://localhost/tests/ajax.php', {'beverage': selected}, function(data) {
$('#result').html(data);
});
});
});
</script>
</body>
</html>
И это ваш файл ajax.php (изменить код для извлечения информации из базы данных).
if (isset($_POST['beverage']))
{
switch($_POST['beverage'])
{
case 'Milk':
print 'Milk makes you grow!';
break;
case 'Coffee':
print 'Coffee does not let you sleep!';
break;
case 'Tea':
print 'Tea comes from China!';
break;
default:
print 'Nothing was selected';
break;
}
}