PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (98): В начало « ... 58 59 60 61 [62] 63 64 65 66 ... » В конец

> Найдено сообщений: 1465
teddy Отправлено: 18 Августа, 2013 - 16:03:22 • Тема: Хранение данных пользователя • Форум: Вопросы новичков

Ответов: 79
Просмотров: 4080
LIME
Может быть - может быть...

Обычно мы заранее знаем какие нам данные понадобятся(при условии что чертеж проекта набросан заранее), поэтому я обычно пишу функцию, которая достает из базы все что нам нужно на основе id для конкретного пользователя. Тоесть все разруливает ОДНА точка.

А так потом путаница помоему может возникнуть при расширении потому что часть данных лежит в сессии, часть по выборке забирается и можно запутаться, записывать ли снова все в сессию или держать часть в сессии а часть забирать по отдельной выборке - как по мне бардачно получается.

Поэтому проще написать функцию и все... и если что то надо поменять - уже делаем небольшие правки в функции или методе класса в зависимости от того в каком стиле написан код ООП или процедурный...

Мое мнение...
teddy Отправлено: 18 Августа, 2013 - 15:33:57 • Тема: Хранение данных пользователя • Форум: Вопросы новичков

Ответов: 79
Просмотров: 4080
Hapson пишет:
Ну да, пароль не нужен, а за мылом тогда лазить в БД?

Я например записываю только ID при авторизации в сессию и дальше на этой основе все разруливаю. Если что то нужно селектнуть из БД - то id всегда есть под рукой и можно легко манипулировать данными при помощи него
teddy Отправлено: 18 Августа, 2013 - 15:29:36 • Тема: Как взять значение Радиокнопки • Форум: Вопросы новичков

Ответов: 1
Просмотров: 130
Простой пример

PHP:
скопировать код в буфер обмена
  1. if(isset($_POST['sex'])){
  2.     echo $_POST['sex'];
  3. }
  4.  


CODE (html):
скопировать код в буфер обмена
  1. <form action="" method="post">
  2. <input type="radio" name="sex" value="male"> мужской<Br>
  3. <input type="radio" name="sex" value="female"> женский<Br>
  4. <input type="submit" value="Выбрать">  
  5. </form>
  6.  

(Добавление)
В зависимости от выбранной кнопки будет отображен его value
teddy Отправлено: 18 Августа, 2013 - 15:08:32 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
EuGen
а-а теперь понятно, просто я изначально думал, что тут можно обойтись без имитирования собственных символов для регулярного выражения
teddy Отправлено: 18 Августа, 2013 - 14:57:01 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
Саныч пишет:
Есть только одно исключение для символа ^, когда он не значит "начало строки", но пока опустим этот момент.

Я знаю Улыбка это когда он внутри класса [] тогда меняется смысл

В принципе понятно, я просто на ночь глядя тупанул, записал такой "айпишник" 999.999.999.999 и увидел что фильтр оно не прошло. Вот сегодня посмотрел ещё раз, оказывается я не туда смотрел, а смотрел там где я циклом проверял максимальное значение Улыбка Поэтому думал, что ваша регулярка отбрасывает все числа больше 255 вот и не понимал как ) Спасибо Саныч

И ещё понял что один и тот же результат можно получить разными вариантами. А до этого думал с регулярками все по строжеУлыбка а оказался бардак ))

EuGen
Спасибо за рекомендацию, а класс интересный сам по себе, но чем к примеру плохо то как выполнил я следующее задание? т.е разбил каждую часть выражения(айпи) на ячейку массива $matches а потом в цикле прошелся по его элементам и если какой то из элементов больше чем то что нам нужно - получаем ошибку... Итераций тоже не много, максимум 4

Следующее буду выполнять последнее задание от EuGen и DelphinPRO
teddy Отправлено: 18 Августа, 2013 - 01:22:22 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
DelphinPRO
Спасибо, но уже днем наверное Улыбка

Саныч пишет:
Просто саму регулярку составляйте так, чтобы под нее попали только нужные диапазоны цифр.

Учту, спасибо ) Сейчас наверное отправлюсь отдыхать, но завтра начну снова курить это дело...
(Добавление)
Саныч
Что то сон отогнала мне ваша регулярка... я вот все понять ее до конца не могу...
Ща напишу как я её понимаю
CODE (html):
скопировать код в буфер обмена
  1. #^(?:\d{1,3}(?:\.|$)){4}$#

^ - начало строки(начинаться выражение может в данном случае только с того что в главных скобках

далее идет комбинация ?: которая в моем понимании означает - все что идет после двоеточия будет выброшено из $ip, но там \d который пропускает цифры(вроде должно срезаться) а они почему то попадают под шаблон. {1, 3} понятно, минимум одна цифра, максимум

3. Далее снова ступор с ?: \.(экранированная точка) и вроде тоже должна быть исключена. и что означает эта волшебная палочка | - я вообще без понятия Недовольство, огорчение {4} - не менее и не более 4 кармашков скажем так... т.е 127.0.0.1 $ - конец строки.

Вообщем думаю я заблуждаюсь по поводу ?: - если да то поправьте пожалуйста. И ещё не понял того, как данная регулярка определяет что нельзя более 255 писать в каждый кармашек... секрет в "палочке"? ))

Вообщем бардак в голове )
teddy Отправлено: 18 Августа, 2013 - 01:14:44 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
Экранирование помогло, спасибо ) я думал оно только внутри скобок []() требуется...

Саныч пишет:
Учитывайте допустимые значения в самой регулярке.

А как узнать что то или иное значение больше 254 если не через проверку элементов массива?
teddy Отправлено: 18 Августа, 2013 - 01:05:58 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
LIME пишет:
скобки не нужны

Во втором задании понадобились... хотя не знаю насколько это корректно.(Старый пост обновил, добавил решение второй задачи)
(Добавление)
Саныч пишет:
Смотрите что означает символ точка в регулярках и что нужно сделать.
Точка это любой символ, а мне ведь цифры нужны Улыбка
teddy Отправлено: 18 Августа, 2013 - 00:45:31 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
Саныч
А что, шанс ещё остался )) Я исправился. Но только не пойму один момент и баг ли это.

При попытке задать меньше 4 значений в адресе, например 127.0.0 то строка все равно проходит фильтр. Пробовал через + принудить к вводу каждой части но не вышло. Получилось только первую часть сделать принудительной...
teddy Отправлено: 17 Августа, 2013 - 23:35:06 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
EuGen пишет:
0. Написать выражение, которое будет проверять правильность строки по октетам, без учёта предельных значений IPv4


PHP:
скопировать код в буфер обмена
  1.  
  2. $ip = "127.0.0.1";
  3.  
  4. if(!preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/", $ip, $matches)) {
  5.     echo "Нет";
  6. }else{
  7.     echo "Да";
  8. }
  9. echo "<pre>";
  10. print_r($matches);
  11. echo "</pre>";
  12.  

Output:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. Array
  3. (
  4.     [0] => 127.0.0.1
  5.     [1] => 127
  6.     [2] => 0
  7.     [3] => 0
  8.     [4] => 1
  9. )
  10.  

EuGen пишет:
1. Написать выражение, которое будет проверять правильность строки по октетам, с учётом предельных значений IPv4 (т.е. 0-254)

Спойлер (Отобразить)


Саныч
Спасибо за ссылкуУлыбка Так я не браковал ваше задание, просто в данный момент честно говоря главная цель это набить руку на самих шаблонах, а в дальнейшем уже наверное буду решать и более разнообразные задачи с привкусом регулярок Улыбка
teddy Отправлено: 17 Августа, 2013 - 23:11:32 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
Саныч
Я видел эту тему ))) сложная была регулярка Улыбка Мне бы что нибудь по проще... ) Хотя тут запарка скорее всего будет с поиском нужной информации, придется перелопатить разные таблицы цветов, разобраться и потом уже что то писать Улыбка Мне бы просто руку набить на написании шаблонов... Больше заданий - но не очень сложные ) От простого - сложному ) Я конечно учту и это задание, но думаю постараюсь выполнить только если простых заданий больше не будет Улыбка

Цель данного топика - получать различные не сложные задания или средней сложности просто для того что бы набить руку для составления шаблонов регулярных варежний )
teddy Отправлено: 17 Августа, 2013 - 22:46:31 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
armancho7777777
Да уж... )) Я попробую, но когда будет и будет ли вообще адекватное решение - гарантировать не могу, к сожалению Улыбка

EuGen
Постараюсь до завтра все варианты предоставить.

Спасибо за внимание )
teddy Отправлено: 17 Августа, 2013 - 19:51:30 • Тема: Вывести значения одного столбца из бд • Форум: Вопросы новичков

Ответов: 6
Просмотров: 282
MetalHeader
Тогда так
PHP:
скопировать код в буфер обмена
  1. while($mysql_row = mysql_fetch_assoc($select_db)){
  2.     echo $mysql_row['position']."<br />";
  3. }
  4.  

но это вывод только по вашему запросу. Если все нужно то либо перечисляйте поля через запятую либо используйте *(желательно через запятую)

Ну и по аналогии выводите...
teddy Отправлено: 17 Августа, 2013 - 19:44:38 • Тема: Вывести значения одного столбца из бд • Форум: Вопросы новичков

Ответов: 6
Просмотров: 282
MetalHeader

?
teddy Отправлено: 17 Августа, 2013 - 19:32:56 • Тема: Регулярные выражения. Тренировки teddy • Форум: Регулярные выражения

Ответов: 43
Просмотров: 2968
Ребята, вообщем я решил надавить на знания в области регулярок и необходима ваша помощь. Собственно прошу более опытных разработчиков просто писать сюда для меня задачи различного направления по регулярным выражениям. Желательно не от балды а те которые реально встречаются на практике чаще всего Улыбка

Сложность: от простого к сложному. Не важно матч или реплейс, любые.

Начнем с простых а потом уже на более сложные перейдем. По мере возможности буду выкладывать сюда свои решения и если будет ступор, наверное буду спрашивать вас Улыбка

Если найдутся те кто захочет поучаствовать в моем марафоне - буду только рад Улыбка

П:С при наличии задач просьба других форумчан не писать свои решения чтоб я думал сам...

Страниц (98): В начало « ... 58 59 60 61 [62] 63 64 65 66 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB