Я пытаюсь отправить с PHP и jQuery ответ массива, но он не работает, мой код PHP:
public function get(Request $request)
{
$pre_images = Pre_Image::all();
foreach ($pre_images as $pre_image) {
$data[] = array("file" => $pre_image->image);
}
echo json_encode($data);
}
Он создает массив, и я кодирую его в быть отправлено. Тогда мой jQuery такой:
$( 'body' ).on( "click", '#add_value', function() {
$.ajax({
type: 'POST',
url: '/pre_image/get',
success:function(files)
{
var len = files.length;
var values = '';
for(var i=0; i<len; i++){
values = values + '<div class="col-md-3">'+ files[i].file +'<div class="col-md-3">';
}
$(".values").append('<div class="row" style="padding-left:20px; padding-right:20px;"><div class="col-md-3"><div class="form-group"><br><label class="control-label mb-10">Nombre de las Opciones (Ejem: Rojo, Azul.)</label><input type="text" class="form-control" name="value_name"></div></div><div class="col-md-3"><div class="form-group"><br><label class="control-label mb-10">Opciones (Ejem: 38, 39, 40.)</label><input type="text" class="form-control" name="value_name"></div></div><div class="col-md-6"><div class="form-group"><br><label class="control-label mb-10">Imagenes </label>'+values+'</div></div></div>');
}
});
return false;
});
Я получаю ответ в случае успеха, но первая проблема, которую я получаю, это когда я использую files.length; он насчитывает 37, и он должен считаться 1, потому что в данный момент в базе данных есть только одна запись, но это подсчет длины слова, которое я имею в виду 272621621287272.jpg это подсчет длины слова. проблема, которую я получаю, это то, что я использую для чтения массива, и он возвращает меня неопределенным. Как это возможно, если в массиве хранится запись, полученная из ответа PHP.
Надеюсь, вы мне поможете. Спасибо. jquery