Идиотский вопрос
Дамы и господа, может, кто сходу знает.
Имеется код (не кот, а код!)
$_kill1 = 1;
$_kill2 = 2;
$_kill3 = 3;
proba_l ($link, 'Hero_all', 'Существительное', ' ', 'Длинное = '.$_kill1 and 'Плоское = '.$_kill2 and 'Гибкое = '.$_kill3);
хде:
function proba_l($link, $t, $parametr, $parametr_ind, $usl)
{
$sql_re = "SELECT * FROM ".$t." WHERE ".$usl.";";
$result_re = mysqli_query($link, $sql_re);
$num_rows_re = mysqli_num_rows($result_re);
$sqls_re = mysqli_fetch_all($result_re, MYSQLI_ASSOC);
$x_re = rand(0, $num_rows_re-1);
echo $sqls_re[$x_re][$parametr];
$x_code_re = $sqls_re[$x_re][$parametr_ind];
//echo $x_code_re;
return $x_code_re;
}
И вот у меня в proba_l ($link, 'Hero_all', 'Существительное', ' ', 'Длинное = '.$_kill1 and 'Плоское = '.$_kill2 and 'Гибкое = '.$_kill3);
Не работает условие WHERE ".$usl.";"; то бишь 'Длинное = '.$_kill1 and 'Плоское = '.$_kill2 and 'Гибкое = '.$_kill3);
Когда просто 'Гибкое = '.$_kill3); то работает, а три условия - не хочет.
Может, кто сходу скажет, где ошибка в синтаксисе?
А скорее всего он, родимый.
Aagira 2 года назад #
?
Нет, не утверждаю, что так быть не должно, по идее, знаки нужные, но из разных областей (php и запрос в БД). Можно попробовать убрать лишний знак или экранировать кавычки (поменять их).
А вообще, Маш, почему у тебя ошибки на экран не выводятся? Лог ошибок ведется, хоть?
Aagira 2 года назад #
Или так:
Aagira 2 года назад #
Aagira 2 года назад #
Мария Фомальгаут 2 года назад #
Aagira 2 года назад #
Aagira 2 года назад #
Почему здесь знак равенства находится внутри строчного выражения?
То есть, он будет восприниматься не как то, что $_kill2 = «Плоское», а как часть выражения, где, допустим, если переменная $_kill2 несет в себе значение «доска», то результат будет в виде фразы «Плоское = доска».
Выходит, теперь мне задумка понятна, но в том и штука, что в вопросе не объясняется, что именно требовалось, чтоб работало. Какого результата ждешь от программы.
Aagira 2 года назад #
Aagira 2 года назад #
Можно ли среди аргументов функции в php писать целую фразу, ничем ее не выделяя? Например, запятой после (видела такое).
Мария Фомальгаут 2 года назад #
proba_l ($link, 'Hero_all', 'Существительное', ' ', 'Длинное = '.$_kill1.' and Плоское = '.$_kill2.' and Гибкое = '.$_kill3);
Aagira 2 года назад #
У меня вынос мозга. Серьезно.
Что выходит в результате? Часом, не фраза со словом and? Там где «плоское» и «гибкое».
Мария Фомальгаут 2 года назад #
Aagira 2 года назад #
И зачем оно надо?
Aagira 2 года назад #
Мария Фомальгаут 2 года назад #