Alexander
18.01.2017
10:47:36
так все воркает
Kirill
18.01.2017
10:50:42
{{ null or "qwe" }}
Dan
18.01.2017
10:52:10
может быть old('name') само по себе и содержит null но не является таковым?
var_dump ?
Google
Kirill
18.01.2017
10:57:18
{{ $a or "qwe" }} пишет "qwe"
Nikolay
18.01.2017
10:57:39
Не нужно так писать
Правильно через or
Dan
18.01.2017
10:58:09
почему правильно? можно и так и так
просто через or короче
в документации так и сказано
Kirill
18.01.2017
10:58:34
Из чего делаем вывод, что NULL не равно !isset, хотя isset(NULL) == false
Nikolay
18.01.2017
10:58:45
Ну да, зачем писать длиннее?
Dan
18.01.2017
10:59:01
полагаю что проверить можно для начала написав полную версию тернарного оператора
что в слове "проверить" не понятного было сказано?
?
Valery
18.01.2017
10:59:30
а в семёрке ещё можно ??
Google
Dan
18.01.2017
10:59:31
что за люди, читают через строчку ?
Nikolay
18.01.2017
10:59:38
Но зачем проверять?
если он делает тоже самое
В общем не суть
Dan
18.01.2017
10:59:50
но длинная запись работает, а короткая нет
как так
Alexander
18.01.2017
11:00:09
Дак я же проверил
через тернарный работает
{{ old('name') != null ? old('name') : $product->name }} так все ок
Nikolay
18.01.2017
11:01:10
а там null?
Alexander
18.01.2017
11:01:15
{{ isset(old('name')) ? old('name') : $product->name }} - так получаю ошибку Cannot use isset() on the result of an expression (you can use "null !== expression" instead)
Dan
18.01.2017
11:01:17
для того чтобы понять как работает синтаксический сахар с "короткой версией" тернарного оператора - надо смотреть исходный код лары
Alexander
18.01.2017
11:01:29
Valery
18.01.2017
11:01:42
может быть потому что null это всё же установленная переменная
Dan
18.01.2017
11:03:11
может быть
Nikolay
18.01.2017
11:04:29
Если там будет null
То должен отрабатывать правильно
Только что проверил на 5.3
Alexander
18.01.2017
11:06:55
Видимо какие-то странности именно с old('name')
Nikolay
18.01.2017
11:07:34
Тут чтото с выводом
Google
Dan
18.01.2017
11:07:43
var_dump(old('name')) ?
Nikolay
18.01.2017
11:07:47
Если мы передаем через переменную, то работает
Если как результат функции, то нет
Kirill
18.01.2017
11:08:06
А вы не все читаете, да?
Dan
18.01.2017
11:08:12
так вот похоже что name это результат функции
и isset поэтому не работает
Nikolay
18.01.2017
11:08:45
Kirill
18.01.2017
11:08:50
{{ null or "qwe" }} тоже пишет единицу
Nikolay
18.01.2017
11:08:53
ага
Kirill
18.01.2017
11:10:12
У меня сразу было подозрение, что этот синтакс шугар может работать не совсем так, как хотелось бы
Adel
18.01.2017
15:01:32
Никто случаем не использует Dingo API роутинг?
Sergey
18.01.2017
16:28:46
Гуру PHP, help pls
$_POST пустой, когда я обращаюсь по Ajax (post)
echo file_get_contents('php://input');
данные только тут не сервере есть
а массив сам пустой
Adel
18.01.2017
16:29:49
а что там за данные?
Sergey
18.01.2017
16:30:10
вообще json посылаю, но пробывал и строку и просто 1
$("#add-task-form").submit(function(e){
$.ajax({
url : "api/task/store",
type : "POST",
data : "hello",
}
});
});
$("#add-task-form").submit(function(e){
var task = JSON.stringify( $( this ).serializeArray());
$.ajax({
url : "api/task/store",
type : "POST",
data : "hello",
dataType : task,
success : function(data){
console.log("Success of ajax request");
console.log(data);
},
error : function (xhr, b, c) {
console.log("xhr=" + xhr + " b=" + b + " c=" + c);
}
});
});
Google
Sergey
18.01.2017
16:30:38
вот реальный
Adel
18.01.2017
16:30:42
data: [test: 'test']
Sergey
18.01.2017
16:31:48
Success of ajax request
todo.local (строка 133)
[{"name":"task","value":"Починить PHP"}]
echo json_encode(file_get_contents('php://input'));
это вот эта строка возвращает в нормальном варианте
Adel
18.01.2017
16:32:10
не надо велосипедить
сделай как я написал
Sergey
18.01.2017
16:33:02
Success of ajax request
todo.local (строка 133)
[test: "test"]
а $_POST пустой
https://www.sencha.com/forum/archive/index.php/t-90244.html вот тут парень описывает мою проблему 1 в 1
и вроде есть решение: The problem turned out to be in my configuration of JsonWriter - I did it with "encode: false". So the solution was putting "encode: true" config to the JsonWriter and PHP started getting POSTed values.
тольо я не могу понять где найти и как изменить конфиг JsonWriterа
Adel
18.01.2017
16:36:59
https://api.jquery.com/jquery.ajaxsetup/
Sergey
18.01.2017
16:38:29
спасибо)
Adel
18.01.2017
16:39:06
Заработало?
Sergey
18.01.2017
16:39:47
вроде да
$.ajax({
url : "api/task/store",
type : "POST",
data: task,
encode: true,
});
encode помог
Adel
18.01.2017
16:40:29
оно какбы по умолчанию включено
у тебя нгдето выключается чтоли...
Google
Sergey
18.01.2017
16:41:41
в соседней папке все работает
на другом проекте
а в этом нет)
Adel
18.01.2017
16:42:30
поиском можно попробовать найти место где отключается. если есть желание
Sergey
18.01.2017
16:43:21
все таки не до конца заработало
data: '[{"name": "task","value": "Починить PHP"}]',
с этими данными не идет
кавычки я убрал одинарные
var task = JSON.stringify( $( this ).serializeArray());
alert(task);
$.ajax({
data: [{"name": "task","value": "Починить PHP"}],
получется если просто вручную значение пишу оно приходит на сервер
а если переменной то нет
я просто из алерта копирую значение переменной и я его вижу в $_POSTе, а как переенную подставляю, то нет
Adel
18.01.2017
16:59:05
data: {name: 'task', value: 'PHP'}
Sergey
18.01.2017
17:04:52
var task = JSON.parse(JSON.stringify($( this ).serializeArray()));
вот такая конструкция все парсит и все работает
Adel
18.01.2017
19:50:38
ты же понимаешь, что оно выворачивает наизнанку, а потом делает обратно?
Sergey
18.01.2017
19:59:54
Да
Но она рсботает)
Nikolay
19.01.2017
09:29:07