![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| xarakiry |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Вот вожусь не могу сообразить, как мне из ключа массива сделать переменную строковую.
К примеру есть $_POST['name'] как мне из него сделать $name, т.е в массиве много ключей и всех мне надо перевести в обычный вид. --------------------
Все университеты Азербайджана на students.az |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
но так лучше не делать зачем такая задача? |
|||
|
||||
| xarakiry |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Это не совсем подходит. Я же говорю надо перевести элемент массива в строковую переменную... а форич просчитывает массив как элемент - ключ. А требуется из ключа сделать переменную. из $_POST['name'] в $name из $_POST['city'] в $city и т.д А надо это чтобы потом проще было работать с переменными, и пропускать через функции. (Во всяком случае для меня так проще) --------------------
Все университеты Азербайджана на students.az |
||||
|
|||||
| Fortop |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
xarakiry,
Либо я ничего не понял, либо Вы не поняли приведенного кода. Судя по сумбурным описаниям, скорее второе. Поэтому перечитайте и перетестируйте образец кода. -------------------- Мир это Я. Живее всех живых. |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
xarakiry, через функции пропускать удобнее, как раз, массив. В цикле.
Давай ты покажешь нам эти функции, а мы покажем тебе компактный код в три строчки, который с ними работает. |
|||
|
||||
| xarakiry |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Ну, вот моя функция
это я ещё убрал из неё трим... Знаю знаю выглядит ужасно и не компактно... --------------------
Все университеты Азербайджана на students.az |
||||
|
|||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
xarakiry, примечание: htmlspecialchars - не для обработки перед вставкой в БД. а для обработки непосредственно перед выводом пользователю
|
|||
|
||||
| Fortop |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
Это все связанные между собой свойства? Если да, то создай объект/модель/массив и передавай в функцию именно его // FIELD_NAME - это всегда имя из списка имен разрешенных для получения извне данных. // FIELD_VALUE - сами данные соответствующие этому имени. // как их лучше профильтровать см. один из приемов организации фильтрации входящих данных
Это сообщение отредактировал(а) Fortop - 15.7.2008, 21:06 -------------------- Мир это Я. Живее всех живых. |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Это POST
а транзакция ему не нужна |
|||
|
||||
| xarakiry |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Отличный пример ! Вот только последнее не понял... что за функция mysql_start_transaction, я её даже на php.net не нашёл.... ??? Вопросик:
не понял что за "разрешенный тип или еще лучше имя callback функции для фильтрации и валидации данных" это как ? --------------------
Все университеты Азербайджана на students.az |
||||||
|
|||||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
xarakiry, это слишком сложно для человека, который впервые узнал про циклы
тебе надо понять две вещи. 1. что любой массив удобнее обрабатывать в цикле. чем городить из него сто переменных и писать каждую отдельной строчкой. Надеюсь, ты это уже понял 2. Что твои данные надо обрабатывать в цикле. Ты уже написал этот цикл? Можно посмотреть? После того, как напишешь обработку в цикле, можно будет приступить к автоматическому составлению запроса. В цикле, разумеется. |
|||
|
||||
| Fortop |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
я понимаю более того бывает даже строго наоборот, нужно записать в разные
Это как раз самое простое тривиальная обертка над твоим
это значит что все данные полученные из внешних источников должны проверяться. Чтобы ты получил в качестве года именно число, а не надпись "Здесь был Вася". Дальше идет описание как лучше организовать эту проверку. В качестве параметра в массиве разрешенных данных можно хранить или имя функции или "имя типа" (т.е. какого типа мы ожидаем данные) простейший случай - "имя типа"
тогда фильтрация пришедших данных будет выглядеть примерно так
Но, Feldmarschall, прав - лучше все по порядку. Так удобнее это осваивать. Это сообщение отредактировал(а) Fortop - 16.7.2008, 00:59 -------------------- Мир это Я. Живее всех живых. |
||||||||||
|
|||||||||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
та я в курсе. как ты правильно заметил, я хотел по порядку. Короче. Если уж он тебя так слушает, раскрыв рот, то объясни ему, пожалуйста, что транзакция на один запрос не имеет смысла. что в общем случае достаточно перечислить только имена разрешенных полей, а в запросе оформлять, как строки. т.е. функция становится примитивной, и без колбэков. что в функции updatedbitems нет ни малейшего смысла, и что вообще не нужно делать функции, вызываемые только один раз что нужна вместо неё create_set_query(). Это сообщение отредактировал(а) Feldmarschall - 16.7.2008, 08:31 |
|||
|
||||
| xarakiry |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Fortop Да, дейст-но с массивами проще, код уменьшается.
Feldmarschall Да , я слушаю но не раскрыв рот. Если бы я считал себя специалистом я не писал бы в этом разделе, а наверное задавал бы вопросы в разделе профи. Я не считаю что задать вопрос и получить ответ чем то постыдным. захожу сюда потому что тут люди для разных задач находят интересные решения, что очень радует. Спасибо большое всем за помощь! --------------------
Все университеты Азербайджана на students.az |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
не понял, чему была эта тирада. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |