| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > key($_POST) |
| Автор: Shark 25.3.2016, 15:25 | ||||
Есть код:
switch висит на кнопках, view и cancel меняются в зависимости от параметра status в БД... Вопрос: как передать id в mysql запрос? накатал на скорую руку (не рабтает)
|
| Автор: ksnk 25.3.2016, 17:38 | ||
| Перед этой строкой `switch(key($_POST))` какая то работа с массивом POST ведется? Если нет, то key($_POST) вернет первый попавшийся ключ массива POST. Например `id`, если он будет идти первым в массиве. Менее затратно по времени отладки - применять проверки на наличие ключей функцией isset
|
| Автор: NFL 26.3.2016, 11:44 |
| Вообще ошибка в проектировании)) Даете submit'ам одно имя (например, action) и дальше просто switch($_POST['action']) ЗЫ: и забудьте о 5.4 и ниже, а до кучи еще и про mysql_* Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/key(ye_POST)-id56f52e98ae2015bd688b4567#findElement_E7045_56f64bdcae2015ce24cd68f9_0 |
| Автор: Shark 26.3.2016, 14:11 |
| так у меня будет полей 20 где-то... и для каждого делать проверку? |
| Автор: whatisnot 26.3.2016, 18:29 |
Слишком смело, да и зачем числовым значениям кавычки. |
| Автор: ksnk 26.3.2016, 18:42 | ||
А как иначе? Можно вот так, например, если вспомнить про классы
|
| Автор: Shark 26.3.2016, 19:00 | ||
т.е. вызывать класс, в кейсе?... хм... интересно.. нужно будет подумать над этим
а зачем так писать? |
| Автор: ksnk 26.3.2016, 19:36 |
Это такой хитрый способ приведения к числу. Записывается короче, чем intval и выглядит загадочно |
| Автор: Shark 28.3.2016, 09:44 | ||
ksnk, Увидел в конце твоего примера цикл foreach, и сделал так:
Вроде работает. Или все же лучше создать класс и использовать его? P.S. не работает |
| Автор: ksnk 28.3.2016, 11:04 |
| В php, конечно, есть своя особенная магия, но к телепатии она отношения не имеет. (int)$_POST - это что должно быть? |
| Автор: Shark 28.3.2016, 15:03 | ||||
циферка Решил самым бредовым способом, но работает
Нужно было сделать просто, чтоб в цикле while была форма (для каждого id), и закрыть ее в этом же цикле. |
| Автор: whatisnot 28.3.2016, 15:51 | ||
Это конечно глупость, а вот тут $_POST['id'] как раз и должно быть (int)$_POST['id']. А еще лучше если множество значений:
|
| Автор: superVad 1.4.2016, 17:30 |
| http://www.w3schools.com/tags/att_button_value.asp |