Я знаю, что этот вопрос задан много раз, но я пробовал в течение нескольких часов и ничего не работал, я noob с php и ajax, поэтому я мог бы пропустить небольшую вещь, Мне не известно, что я пытаюсь достичь здесь, так это то, что я хочу, чтобы пользователь выбирал группу продуктов питания и основывался на том, что будет отображаться список ингредиентов.Параметры динамического выбора php и mysql
Я протестировал свой файл process.php один, и он работает хорошо, я также протестировал сценарий, что происходит, когда строка, начинающаяся с $ .ajax, не работает, когда я прокомментирую ее и наберите alert (parent) Я действительно получаю значение выбранного параметра, так что я делаю неправильно здесь? или мне не хватает импорта? PS Я использую самозагрузки 3,0 для дизайна
Вот мой HTML код
<!-- field food group-->
<div class ="field form-group">
<label for="food-group"> Food Group * </label>
<div class="input-group input-group-lg">
<select class="form-control" id="food-group-id" name="food-group" onchange="ajaxfunction(this.value)">
<?php
// retreiving the recipe groups
$RecipeGroup = new FoodGroup();
$data = $RecipeGroup->findAll();
foreach ($data->results() as $recipegroup) {
// displaying the options
echo '<option value="'.$recipegroup->food_group_id.'">'.$recipegroup->food_group_name.'</option>';
}
?>
</select>
</div>
</div>
<!-- field Ingredients-->
<div class ="field form-group">
<label for="ingredients"> Ingredients * </label>
<div class="input-group input-group-lg">
<select class="form-control" id="ingredients">
<?php
// retreiving the recipe groups
$ingredients = new Ingrident();
if(Input::exists()){
$data = $ingredients->findByGroup(Input::get('food-group'));
}else
$data = $ingredients->findByGroup(1);
foreach ($data->results() as $ingredient) {
// displaying the options
echo '<option value="'.$ingredient->ingrident_id.'">'.$ingredient->ingrident_name.'</option>';
}
?>
</select>
<br> <br> <br>
<span id="helpBlock" class="help-block center">Ingredient not listed ?
<button class="btn btn-primary center" value="add-ing"> <span class="glyphicon glyphicon-plus"></span> Add New Ingredient </button>
</span>
</div>
</div>
Вот мой сценарий
<script type="text/javascript">
function ajaxfunction(parent)
{
$.ajax({
url: 'process.php?food-group=' + parent;
success: function(data) {
$("#ingredients").html(data);
}
});
}
</script>
Вот мой файл process.php
<?php
mysql_connect('localhost', 'root','');
mysql_select_db("online_recipes");
$result = mysql_query("SELECT * FROM `ingrident` WHERE `food_group_id_fk` = " . mysql_real_escape_string($_GET['food-group']));
while(($data = mysql_fetch_array($result)) !== false)
echo '<option value="', $data['ingrident_id'],'">', $data['ingrident_name'],'</option>';
Перечень импортируемых товаров
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/docs.min.js"></script>
<script src="js/ie10-viewport-bug-workaround.js"></script>
Ваш process.php работает? – Edrich
да это работает –