PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (106): В начало « ... 62 63 64 65 [66] 67 68 69 70 ... » В конец
Найдено сообщений: 1581
Строитель
Отправлено: 03 Апреля, 2017 - 14:59:59 • Тема: Формы • Форум: Вопросы новичков
Ответов: 12 Просмотров: 475
А метод передачи в теге <form method="? "></form> у вас какой?
(Добавление)
Богдан Скуба пишет: echo "Hello $_GET['name'] ! You are $_GET['age'] years old";
Подобную запись лучше писать так:
Строитель
Отправлено: 03 Апреля, 2017 - 14:43:06 • Тема: Формы • Форум: Вопросы новичков
Ответов: 12 Просмотров: 475
Богдан Скуба пишет: Строитель пишет: Богдан Скуба , а файл-обработчик формы (на который форма отправляет POST запрос) под каким именем?
Имя файла "one.php"
А содержимое файла "one.php" ? И ещё, если рядом с "one.php" есть ещё какие-то файлы, то работают ли они?
Строитель
Отправлено: 03 Апреля, 2017 - 14:40:46 • Тема: Сессии / аналог им • Форум: Вопросы новичков
Ответов: 9 Просмотров: 787
Frozel пишет: а нужно чтобы каждый новый запрос от одного и того же пользователя прибавлял единицу к счетчику
Строитель
Отправлено: 03 Апреля, 2017 - 14:28:30 • Тема: Формы • Форум: Вопросы новичков
Ответов: 12 Просмотров: 475
Богдан Скуба , а файл-обработчик формы (на который форма отправляет POST запрос) под каким именем?
Строитель
Отправлено: 02 Апреля, 2017 - 23:17:00 • Тема: Вывод отмеченных и не отмеченных в checkbox • Форум: Вопросы новичков
Ответов: 4 Просмотров: 286
DraMS пишет: Нужно чтоб и неотмеченные выводились, но вычеркнутыми.
Вроде бы так Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
// Изменённый массив для теста
$field [ 'options' ] = array ( 'label' => 'Балкон' ,
'value' => 'Балкон'
) ,
'label' => 'Посудомоечная машина' ,
'value' => 'Посудомоечная машина'
) ,
'label' => 'Холодильник' ,
'value' => 'Холодильник'
) ,
'label' => 'Стиральная машина' ,
'value' => 'Стиральная машина'
) ,
'label' => 'Телевизор' ,
'value' => 'Телевизор'
) ,
'label' => 'Кондиционер' ,
'value' => 'Кондиционер'
)
) ;
// Это временная строка для теста
$meta = [ 'label' => 'Стиральная машина' ] ;
foreach ( $field [ 'options' ] as $option ) {
if ( $meta && in_array ( $option [ 'value' ] , $meta ) ) { echo $option [ 'value' ] . '<br />' ;
} else {
echo '<s>' . $option [ 'value' ] . '</s><br />' ;
}
}
Тут будет стиральная машина выведена как обычно, а все остальные элементы будут зачёркнуты. В вашем коде не забудьте удалить временные строки (я их написал для демонстрации)
Строитель
Отправлено: 01 Апреля, 2017 - 15:05:03 • Тема: По разбивке предложения • Форум: Регулярные выражения
Ответов: 73 Просмотров: 3801
bellagio Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
function parse_links_image( $str ) {
if ( preg_match ( '~foto/(.+)=(.+)\+(.+)~iu' , $str ) ) { $pattern = '~foto/(.+)=(.+)\+(.+)~iu' ;
$replace = '<div class="wp-caption aligncenter">' .
'<img src="foto/$1" alt="$3" />' .
'<div class="wp-caption-text">$2</div></div>' ;
} elseif ( preg_match ( '~foto/(.+)=(.+)~iu' , $str ) ) { $pattern = '~foto/(.+)=(.+)~iu' ;
$replace = '<div class="wp-caption aligncenter">' .
'<img src="foto/$1" alt="$2" />' .
'<div class="wp-caption-text">$2</div></div>' ;
} else {
$pattern = '~foto/(.+)~iu' ;
$replace = '<div class="wp-caption_one aligncenter">' .
'<img src="foto/$1" alt="" /></div>' ;
}
}
// Пример без описания
echo parse_links_image( 'foto/123.png' ) . "\n " ;
// Пример с описанием
echo parse_links_image( 'foto/123.png=а тут описание картинки' ) . "\n " ;
// Пример с описанием и альтом картинки
echo parse_links_image( 'foto/123.png=а тут описание картинки+тут альт картинки' ) ;
Не много сократил код
Строитель
Отправлено: 01 Апреля, 2017 - 14:21:00 • Тема: По разбивке предложения • Форум: Регулярные выражения
Ответов: 73 Просмотров: 3801
bellagio Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
function parse_links_image( $str ) {
'~foto/(.+)=(.+)~iu' ,
'<div class="wp-caption aligncenter">' .
'<img src="foto/$1" alt="$2" />' .
'<div class="wp-caption-text">$2</div></div>' ,
$str
) ;
} else {
'~foto/(.+)~iu' ,
'<div class="wp-caption_one aligncenter">' .
'<img src="foto/$1" alt="" /></div>' ,
$str
) ;
}
return $str ;
}
// Пример без описания
echo parse_links_image( 'foto/123.png' ) ;
/* Результат
<div class="wp-caption_one aligncenter"><img src="foto/123.png" alt="" /></div>
*/
// Пример с описанием
echo parse_links_image( 'foto/123.png=а тут описание картинки' ) ;
/*
<div class="wp-caption aligncenter"><img src="foto/123.png" alt="а тут описание картинки" /><div class="wp-caption-text">а тут описание картинки</div></div>
*/
Строитель
Отправлено: 01 Апреля, 2017 - 13:48:05 • Тема: По разбивке предложения • Форум: Регулярные выражения
Ответов: 73 Просмотров: 3801
bellagio , вроде бы так Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
function parse_links_image( $str ) {
'~foto/(.+)=(.+)~iu' ,
'<div class="wp-caption aligncenter">' .
'<img src="foto/$1" alt="$2" />' .
'<div class="wp-caption-text">$2</div></div>' ,
$str
) ;
}
echo parse_links_image( 'foto/123.png=а тут описание картинки' ) ;
/*
<div class="wp-caption aligncenter"><img src="foto/123.png" alt="а тут описание картинки" /><div class="wp-caption-text">а тут описание картинки</div></div>
*/
Строитель
Отправлено: 01 Апреля, 2017 - 13:00:49 • Тема: По разбивке предложения • Форум: Регулярные выражения
Ответов: 73 Просмотров: 3801
bellagio , попробуйте так:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
function parse_links_image( $str ) {
'|foto/([a-zA-Z0-9-./]+)|' ,
'~<div class="wp-caption-text">(.+)</div>~iu'
) ;
$rules ,
'<div class="wp-caption aligncenter">' .
'<img src="foto/$1" alt="" />' .
'<div class="wp-caption-text">$2</div></div>' ,
$str
) ;
}
return parse_links_image( $input ) ;
А вообще, всегда публикуйте исходную строку, из которой вам нужно вытянуть данные.
Строитель
Отправлено: 31 Марта, 2017 - 22:23:21 • Тема: Нечёткий поиск строк • Форум: Программирование на PHP
Ответов: 6 Просмотров: 1358
Dragon_Knight пишет: Строитель , ну не для одной команды-же пишется система, а для тысяч.
А пример выше имеет три фразы, но команда-то одна.
Три фразы я написал для примера. Вы можете написать их сколь угодно, но с учётом особенностей именно этого шаблона - а именно, все фразы должны начинаться со слова "включи". Но это вроде бы итак логично? )
Строитель
Отправлено: 31 Марта, 2017 - 22:16:39 • Тема: Нечёткий поиск строк • Форум: Программирование на PHP
Ответов: 6 Просмотров: 1358
Dragon_Knight пишет: Строитель , интересный вариант, но придётся под каждую фразу описывать свою регулярку, причём продумывать как может пользователь извернуться и сказать её
Почему? ) Например, в примере выше используется одна регулярка для как минимум трёх фраз.
Строитель
Отправлено: 31 Марта, 2017 - 21:40:13 • Тема: Нечёткий поиск строк • Форум: Программирование на PHP
Ответов: 6 Просмотров: 1358
Dragon_Knight , не знаю поможет ли вам этот демо-пример, т.к. он построен на основе регулярных выражений, но я предполагаю - суть вам будет понятна.
Чтобы не сохранять набор предложений, можно организовать поиск по словосочетаниям не полных слов. Примерно так:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
$voice = 'включи свет на улице' ;
$voice = 'включи уличный свет' ;
$voice = 'включи уличное освещение' ;
// Под совпадение попадут все выше перечисленные строки
if ( preg_match ( '~^включи(.+)ули(.+)~iu' , $voice ) ) { echo 'Включён свет на улице<br />' ;
}
// $voice = 'Включи ... на крыльце';
// В этом условии не будет совпадений с "Уличным освещением",
// и если раскомментировать переменную со значением 'Включи ... на крыльце',
// то выполнится нижний блок if () {}
if ( preg_match ( '~^включи(.+)крыльц(.+)~iu' , $voice ) ) { echo 'Включён свет на крыльце' ;
}
Подобный принцип можно использовать и в БД, например с оператором LIKE.
Страниц (106): В начало « ... 62 63 64 65 [66] 67 68 69 70 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB