PHP.SU

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

Страниц (34): В начало « ... 22 23 24 25 [26] 27 28 29 30 ... » В конец

> Найдено сообщений: 499
LEONeso Отправлено: 02 Ноября, 2010 - 15:06:25 • Тема: разбивка предложения • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1069
работает. спасибо
(Добавление)
помогите убрать пробел в конце Однако .
PHP:
скопировать код в буфер обмена
  1.       $text = 'мой текст (в скобках слова)';
  2.       $wor=preg_match("#(.+?)\((.+?)\)#i",$text,$wor2);
  3.       print_r ($wor2);

(Добавление)
мой текст_этот_пробел_(в скобках слова)
LEONeso Отправлено: 02 Ноября, 2010 - 14:02:52 • Тема: разбивка предложения • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1069
Здравствуйте, пытаюсь разбить предложение такого типа: 'мой текст (в скобках слова)'
разбить так, чтоб можно было собрать его в массив типа 'мой текст' и 'в скобках слова', но не получается, ковыряюсь, пытаюсь, уже пытаюсь методом тыка, но что-то не получается.

пока остановился на этом, но тут пусто
PHP:
скопировать код в буфер обмена
  1. $text = 'мой текст (в скобках слова)';
  2. $wor=preg_match("/\w*[(]\w[)]/",$text,$wor2);
  3. print_r ($wor2);

(Добавление)
более ближе:
PHP:
скопировать код в буфер обмена
  1. $text = 'мой текст (в скобках слова)';
  2. $wor=preg_match("/(\D*)[(\d*](\D*)[)]/",$text,$wor2);
  3. print_r ($wor2);


выдача: Array ( [0] => мой текст (в скобках слова) [1] => мой текст [2] => в скобках слова )
собственно верны 1 и 2, 0 - это все, что было.
Но это я сделал методом тыка, проб и ошибок, но кто мне объяснит, грамотно ли выражение)?
(Добавление)
Если в тексте встречаются цифры, все "летит". Хм
LEONeso Отправлено: 29 Октября, 2010 - 22:15:04 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
Ясно. спасибо.
LEONeso Отправлено: 29 Октября, 2010 - 19:39:58 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
Почитал и про свитч и про ФОР'each

сделал так, собственно как и говорилось выше:
PHP:
скопировать код в буфер обмена
  1.  
  2.       $options = array(
  3.       'Уничтожить',
  4.       'Очистить',
  5.       'Версия для печати',
  6.       'Проверить таблицу',
  7.       'Оптимизировать таблицу',
  8.       'Починить таблицу',
  9.       'Анализ таблицы'
  10.       );
  11.       echo '<select name="submit_mult" dir="ltr" onchange="this.form.submit();">
  12.      <option>С отмеченными:</option>';
  13.       foreach($options as $options){
  14.       echo '<option value="'.$options .'"'.($myrow['option']==$options  ? ' selected':'').'>'.$option.'</option>';
  15.       }
  16.       echo '</select>';

Выбрал способ без ключа.

Я как понял, ключ нужен для сравнения массивов таких видов:
PHP:
скопировать код в буфер обмена
  1. $a = array (
  2.     "one" => 1,
  3.     "two" => 2,
  4.     "three" => 3,
  5.     "seventeen" => 17
  6. );
  7.  

где $key=>$name,
(Добавление)
забыл написать, что все работает, пока еще не тестил упорно, но завтра при работе над всем кодом, буду смотреть, что там отпадёт при совместной работе с "радио точками" и чекбоксами.

Спасибо. По пиву!
(Добавление)
К стати ,если я вывожу массив с ключем, то получается так?

в распоряжении:
PHP:
скопировать код в буфер обмена
  1. $a = array (
  2.     "one" => 1,
  3.     "two" => 2,
  4.     "three" => 3,
  5.     "seventeen" => 17
  6. );


присваивание:
PHP:
скопировать код в буфер обмена
  1. <input type=\"text\" name=\"test\" id=\"test\" value=\"".$a[1]."\" title=\"".$a['one']."\" maxlength=\"11\">
  2.  


на выходе: ?
CODE (html):
скопировать код в буфер обмена
  1. <input type="text" name="test" id="test" value="one" title="1" maxlength="11">


Верно я понял использование таких массивов? вне цикла
LEONeso Отправлено: 29 Октября, 2010 - 15:51:53 • Тема: поиск по сайту • Форум: Программирование на PHP

Ответов: 5
Просмотров: 331
верно Закатив глазки AND я смотрю и не вижу, вроде бы схожи буквы =) буду теперь пробовать так.
(Добавление)
отлично работает, пока не так как хотелось бы, но я думаю это все поправимо =) и главный функционал он выполняет. Теперь пойду ковыряться с списками, чекбоксами и селектами.
--
Спасибо. Подмигивание
LEONeso Отправлено: 29 Октября, 2010 - 14:49:07 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
схожая =) но там же не номер указывается, а название кейса. как я понимаю.
вот в данный момент стопарнулся на выводе этих списков, буду пробовать =)
(Добавление)
Uchkuma пишет:
$key

Что есть $key? - сделал по аналогии, но не вышло. не работает список, не выводится верно. Верней, массив выводится верно, список верный, но не может выделить верно нужную строку.

Хотя требуется всего лишь сравнить данные из таблицы и данные в массиве и пометить селект.

Придется экспериментировать, методом тыка м.б. и получится спустя сотни ошибок.
LEONeso Отправлено: 29 Октября, 2010 - 12:18:00 • Тема: поиск по сайту • Форум: Программирование на PHP

Ответов: 5
Просмотров: 331
Делал, делал и наконец ... та не работает как требуется.
в место ИЛИ поставил И и теперь пишет "ошибка вывода списка".
что-то совсем запутался.
PHP:
скопировать код в буфер обмена
  1.     $mys= "SELECT * FROM test WHERE ";
  2.     $f = false;
  3.     if (!empty($_POST['fio']) && $_POST['fio']!='*' && $_POST['fio']!='' && $_POST['fio']<>'Фамилия Имя Отчество') {
  4.     $mys.= ($f?" AND ":'') . "fio LIKE '".mysql_real_escape_string($_POST['fio'])."%'";//по наростяющей
  5.     $f = true;
  6.     }
  7.     if (!empty($_POST['street']) && $_POST['street']!='' && $_POST['street']<>'Улица') {
  8.     $mys.= ($f?" ADN ":'') . "street LIKE '".mysql_real_escape_string($_POST['street'])."'";
  9.     $f = true;
  10.     }
  11.     if (!empty($_POST['home']) && $_POST['home']!='*' && $_POST['home']!='' && $_POST['home']<>'Дом') {
  12.     $mys.= ($f?" ADN ":'') . "home LIKE '".mysql_real_escape_string($_POST['home'])."'";
  13.     $f = true;
  14.     }
  15.     if (!empty($_POST['housing']) && $_POST['housing']!='*' && $_POST['housing']!='' && $_POST['housing']<>'Корпус') {
  16.     $mys.= ($f?" ADN ":'') . "housing LIKE '".mysql_real_escape_string($_POST['housing'])."'";
  17.     $f = true;
  18.     }
  19.     if (!empty($_POST['apartment']) && $_POST['apartment']!='*' && $_POST['apartment']!='' && $_POST['apartment']<>'Квартира') {
  20.     $mys.= ($f?" ADN ":'') . "apartment LIKE '".mysql_real_escape_string($_POST['apartment'])."'";
  21.     $f = true;
  22.     }
  23.     if (!empty($_POST['birthday']) && $_POST['birthday']!='*' && $_POST['birthday']!='' && $_POST['birthday']<>'Дата рождения') {
  24.     $mys.= ($f?" ADN ":'') . "birthday LIKE '".mysql_real_escape_string($_POST['birthday'])."%'";
  25.     $f = true;
  26.     }
  27.     if ($f) {$result=mysql_query($mys,$db)or die('Ошибка вывода списка'); $myrow=mysql_fetch_array($result);}
  28.         echo "<table><tbody><tr style=\"font-weight:bold;\"><td>id:</td><td colspan=\"2\">Ф.И.О.:</td><td colspan=\"2\">Адрес:</td><td>Дата рождения:</td></tr>";
  29.                 do {
  30.                         printf ("<tr><td>%s</td><td colspan=\"2\">%s</td><td colspan=\"2\">%s %s %s %s</td><td>%s</td></tr>", $myrow['id'], $myrow['fio'], $myrow['street'], $myrow['home'], $myrow['housing'], $myrow['apartment'], $myrow['birthday']);
  31.                 } while ($myrow=mysql_fetch_array($result));
  32.         echo "</tbody></table>";
LEONeso Отправлено: 28 Октября, 2010 - 20:28:28 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
спасибо всем, буду пробовать, спасибо даже за свитч, я про него вообще забыл, кейсы тож полезная штука в некоторых моментах Подмигивание
--
массивы фактически не использовал, теперь начну их использовать, возможно в будущем пойму, как их использовать с максимальной выгодой для упрощения кода.
LEONeso Отправлено: 28 Октября, 2010 - 18:38:26 • Тема: поиск по сайту • Форум: Программирование на PHP

Ответов: 5
Просмотров: 331
Спасибо, буду пробовать.
Ну улицы - в моем случае это селектор т.е. статический список, который выбирается ручками, а не вписывается. Просто сам смысл это последовательность символов, без зависимости регистра. Что-то типа ищи "По", а "пробел" конец т.е. если есть первое совпадение "По" и в таблице встречается "Победа" или же "Поезд" то условие выполняется верно, так же и с ф.и.о.

Сол Па В
Солдатов Павел Викторович
Солдатова Паула Владимировна

и т.п.

Возможно мне следует заносить Фамилию Имя и Отчество в отдельные ячейки, допустим разбивать их с помощью регулярки и заносить в массив, который в дальнейшем пойдет в ячейки таблицы базы данных.

Конечно, я с этим не сталкивался и пока только ставлю цели и пытаюсь их достичь, ковыряю форум "уроки php" Улыбка ну и книги листаю, все не запомнишь, а если что-то интересное на глаза попадется, стоит потратить время и попробовать это использовать.
LEONeso Отправлено: 28 Октября, 2010 - 17:17:55 • Тема: совсем новичек php • Форум: Программирование на PHP

Ответов: 9
Просмотров: 390
denwer - его установить проще пареной репы, главное чтоб фаерфол не ругался, как правило будет ругаться =)
запускается с помощью ярлыка Start Denwer

создает виртуальный диск. обычно это Z.

и вся инфа и ссылки тут http://localhost/
--

Вообще если установлен не читая, что он там пишет в командной строке, то легче удалить и поставить еще раз, но при этом читать, что он пишет и что он спрашивает. (при установке, открывает окно браузера, предварительно все окна должны быть закрыты, и просить закрыть окно, далее идёт установка)


чтоб начал работать твой сайт, нужно тупо скопировать test папку и переименовать её, далее делать че угодно. имя папки = имя сайта (локального), типа test1.ru

Адрес обычно такой:

Z:\home\test\www
LEONeso Отправлено: 28 Октября, 2010 - 16:58:36 • Тема: поиск по сайту • Форум: Программирование на PHP

Ответов: 5
Просмотров: 331
Здравствуйте, пытаюсь сделать поисковую форму, но ищет он по таблице бд любое совпадение из всех форм и выдает это на странице.

Мой код обработчик:
PHP:
скопировать код в буфер обмена
  1.  
  2.         if (isset($_POST['search']))
  3.         {
  4.                 if (isset($_POST['fio']))
  5.                         {
  6.                         $fio=$_POST['fio'];
  7.                         if ($fio=='' || $fio==='Фамилия Имя Отчество') {unset($fio);}
  8.                         }
  9.                 if (isset($_POST['street']))
  10.                         {
  11.                         $street=$_POST['street'];
  12.                         if ($street=='' || $street==='Улица') {unset($street);}
  13.                         }
  14.                 if (isset($_POST['home']))
  15.                         {
  16.                         $home=$_POST['home'];
  17.                         if ($home=='' || $home==='Дом') {unset($home);}
  18.                         }
  19.                 if (isset($_POST['housing']))
  20.                         {
  21.                         $housing=$_POST['housing'];
  22.                         if ($housing=='' || $housing==='Корпус') {unset($housing);}
  23.                         }
  24.                 if (isset($_POST['apartment']))
  25.                         {
  26.                         $apartment=$_POST['apartment'];
  27.                         if ($apartment=='' || $apartment==='Квартира') {unset($apartment);}
  28.                         }
  29.                 $result=mysql_query("SELECT * FROM test WHERE fio LIKE '$fio' OR street LIKE '$street' OR housing LIKE '$housing' OR apartment LIKE '$apartment'",$db)or die('Ошибка вывода списка');
  30.                 $myrow=mysql_fetch_array($result);
  31.                 echo "<table><tbody><tr style=\"font-weight:bold;\"><td>id:</td><td colspan=\"2\">Ф.И.О.:</td><td colspan=\"2\">Адрес:</td><td>Дата рождения:</td></tr>";
  32.                 do {
  33.                         printf ("<tr><td>%s</td><td colspan=\"2\">%s</td><td colspan=\"2\">%s %s %s %s</td><td>%s</td></tr>", $myrow['id'], $myrow['fio'], $myrow['street'], $myrow['home'], $myrow['housing'], $myrow['apartment'], $myrow['birthday']);
  34.                 } while ($myrow=mysql_fetch_array($result));
  35.                 echo "</tbody></table>";


Требуется, выдача совпадения не одной из форм, а совпадение каждой заполненной формы в таблице бд.
(Добавление)
OR = или, но если я пишу AND, то поиск не выполняется верно и пишет ошибку
(Добавление)
Мне кажется смысл действия поисковой формы не понятен Однако по крайней мере, я бы не понял. Попытаюсь объяснить.

Есть таблица: 'id', 'fio', 'street', 'home', 'housing', 'apartment', 'birthday'
Есть формы input: Фамилия Имя Отчество, Улица, Дом, Корпус, Квартира, Дата рождения

Действия:
Я ввожу ф.и.о. (или неполное значение, допустим первая буква фамилии и полное имя и т.п. комбинации включая звезду), квартиру и все.

Работа кода:
Начинает поиск, того ,что я ввел, а это ф.и.о. и корпус, ищет совпадения в БД, если у записи совпадает ф.и.о. и корпус, то выводи иначе ничего не выводи.

Некоторые особенности:
*, где звезда - это любое слово/значение
допустим Зверков * Викторович, где цель поиска Зверков, любое имя, Викторович.
или к примеру
Райская ул., дом *, корпус *, квартира 102
ищет улицу, любой дом и корпус и 102 квартиру.

Так же особенность поиска по фио, по мимо звезды, допустим я ищу Л Светлана В - где Л - это фамилия, первая буква её (даже если я напишу Лир, это означает первые буквы) далее полное имя, но все же - это первые буквы до пробела и отчество, то же первая буква В... будет искать по этим правилам. По нарастающим совпадениям.
--
Пока еще эту особенность я не описал и не представляю как описывать, но цель есть =) пока еще не понял как реализовать поиск по формам.
LEONeso Отправлено: 27 Октября, 2010 - 21:44:32 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
CODE (html):
скопировать код в буфер обмена
  1. <select name="submit_mult" dir="ltr" onchange="this.form.submit();">
  2.    
  3.             <option value="С отмеченными:" selected="selected">С отмеченными:</option>
  4.             <option value="Уничтожить">Уничтожить</option>
  5.             <option value="Очистить">Очистить</option>
  6.             <option value="Версия для печати">Версия для печати</option>
  7.             <option value="Проверить таблицу">Проверить таблицу</option>
  8.             <option value="Оптимизировать таблицу">Оптимизировать таблицу</option>
  9.             <option value="Починить таблицу">Починить таблицу</option>
  10.             <option value="Анализ таблицы">Анализ таблицы</option>
  11.                     </select>

в базе данных хранятся, только value выбранного option, для простоты вывода их в статический вид, но как только заходит речь о редактировании, я не могу сам себе ответить, как я это буду реализовывать, есть предположение о таком коде:
PHP:
скопировать код в буфер обмена
  1. function seleted ($a, $b) {if ('$b'=== '$a') {echo 'selected="selected"';}}
  2.  $delete=$myrow['delete'];
  3. echo'
  4. <select name="submit_mult" dir="ltr" onchange="this.form.submit();">
  5.            <option value="С отмеченными:" '.seleted("","delete").'>С отмеченными:</option>
  6.            <option value="Уничтожить"'.seleted("Уничтожить","$delete").'>Уничтожить</option>
  7.            <option value="Очистить"'.seleted("Очистить","$delete").'>Очистить</option>
  8.            <option value="Версия для печати"'.seleted("Версия для печати","$delete").'>Версия для печати</option>
  9.            <option value="Проверить таблицу"'.seleted("Проверить таблицу","$delete").'>Проверить таблицу</option>
  10.            <option value="Оптимизировать таблицу"'.seleted("Оптимизировать таблицу","$delete").'>Оптимизировать таблицу</option>
  11.            <option value="Починить таблицу"'.seleted("Починить таблицу","$delete").'>Починить таблицу</option>
  12.            <option value="Анализ таблицы"'.seleted("Анализ таблицы","$delete").'>Анализ таблицы</option>
  13.                    </select>';


Мысли: можно не читать
по поводу запроса к базе данных из функции, собственно он даже не сможет узнать куда и зачем ему послать запрос, чтоб выдернуть значение ячейки таблицы. Как вариант, вывод запроса в переменную $delete=$myrow['delete']; правда там еще придется описать else, ведь переменная может быть пустой =) а пустая переменная - это значение по стандарту, ну в моём понимании кода, зачем выводить "С отмеченными:" в статическом виде записи. По крайней мере, оно мне не надо - это информирующий текст о выпадающем списке.
LEONeso Отправлено: 27 Октября, 2010 - 21:14:12 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
В начале я отправил их в базу данных mysql. Не погу понять, как вывести их при редактировании записи, вывод текста в формы не составляет труда, а вот вывод выбора чекбокса и ли селекта я вот не знаю.

Единственное, что известно - это значение т.к. оно берется из базы данных. Сравнивать значения? У меня это может выйти огромной кучей кода из if-else.
LEONeso Отправлено: 27 Октября, 2010 - 20:31:23 • Тема: как вывести из базы данных значения чекбоксов, селектов и т.п. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 2513
Здравствуйте, каким образом выводятся из базы данных значения чекбоксов, селектов и т.п.?

Значения сохранения из value т.е. имеет обычное слово, но не понятно как это слово сопоставить с списком и выделить его или чекнуть.

Кто имеет опыт, поделитесь. Спасибо.
LEONeso Отправлено: 26 Октября, 2010 - 19:18:11 • Тема: Клиенты и их услуги • Форум: Программирование на PHP

Ответов: 0
Просмотров: 114
Здравствуйте.

Цель кода:
Внесение данных о пользователе и дальнейшее внесение предоставляемых ему услуг.

Как это понимаю я:
В начале написать формы регистрации пользователя, далее выводить данные форм, вместе с этим выводить еще форму на добавление новых данных, оказанных услуг. Где главное - это id пользователя, для вывода списка помощи на странице с информацией о пользователе. Т.е. мне придется создать 2 таблицы где в первой пользователи, а вторая их помощь, я так понимаю?

+ дополнительно:
Как грамотно выводить данные из базы данных, обновлять их и собственно вносить их?
С точки зрения безопасности и функциональности, класс или функцию использовать с глобальными параметрами ?
--
У меня просто нет опыта в написании подобных скриптов.

Страниц (34): В начало « ... 22 23 24 25 [26] 27 28 29 30 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB