Задать вопрос

Как разбить массив для последующего составления запрос?

Функция лоад-мор. По клику отправляется аякс запрос, который собирает данные из формы фильтра и id последнего элемента. Данные из формы фильтра приходят в виде массива. Вот весь код аякса и то как я могу получать доступ к данным из формы фильтра:

$(document).on("click", ".load-more a", function(){
		var id = $('.products').children('li:last').data('id');
		inputs = $(".filter form").serializeArray();
		var template = $("#products").html();

		$.ajax({
			type: "post",
			url: "/loadmore",
			data: { "id":id, "inputs":inputs },
			success: function(result) {
	            console.log(result);
	        },
		});
	});

Route::post("/loadmore", function(){
	$in = Input::get("inputs");
	foreach ($in as $i) {
		echo $i['name']." ".$i['value']."<br>";
                    //_token F87uTaTo3Zll4UbOBOpMHfLigwzT8IyWW71a92rZ
                    //reset 1
                    //type_id 0
                    //preset1 0
                   //preset2 0
                    //preset3 0
                   // preset4 0
                    //country 1
                    //cohesive 0
                    //manufacturers 1
                   //country_id 3
                  //min 0
                 //max 200000
	}
});

А вот как должен примерно выглядеть запрос:
// Если существует то посылаем запрос
 if($i['name']) {
       $item = mysql_query("SELECT * FROM items WHERE $i['name'] = $i['value']);
}

Все бы хорошо, ведь $i['name'] = полю таблицы базы данных, но в массиве $i есть такие эелементы как _token, cohesive которые не следует учитывать при запросе, таких полей в таблицы просто нет, в этом то и проблема. Как быть?
  • Вопрос задан
  • 2628 просмотров
Подписаться 7 Оценить Комментировать
Решения вопроса 3
romanzhak
@romanzhak
Mathematician
Применить фильтр:

arr.filter( callback[, thisArg] );
Ответ написан
DaFive
@DaFive
Создайте массив полей базы данных или получите запросом, а потом в цикле проверяйте на наличие поля и заносите в запрос. Но в цикле делать кучу запросов?
Ответ написан
sanchezzzhak
@sanchezzzhak
Ля ля ля...
Я так понимаю вы используете ларавел?

Можно проверять если у таблице такое поле.
Schema::hasColumn('users','post_id');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы