PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (106): В начало « ... 42 43 44 45 [46] 47 48 49 50 ... » В конец
Найдено сообщений: 1580
Строитель
Отправлено: 07 Сентября, 2017 - 09:24:08 • Тема: Прием массива checkbox • Форум: Вопросы новичков
Ответов: 7 Просмотров: 305
Teh_max обращайтесь по ключамPHP:
скопировать код в буфер обмена
<?PHP
echo $_POST [ 'shab' ] [ 0] ; // A
echo $_POST [ 'shab' ] [ 1] ; // B
echo $_POST [ 'shab' ] [ 2] ; // C
?>
<form method="post">
<input type="checkbox" name="shab[]" value="A" />A
<input type="checkbox" name="shab[]" value="B" />B
<input type="checkbox" name="shab[]" value="C" />C
<input type="submit" />
</form>
Строитель
Отправлено: 30 Августа, 2017 - 23:38:54 • Тема: Запрос sql Insert • Форум: Вопросы новичков
Ответов: 8 Просмотров: 560
mirstiker , попробуйте такCODE (
SQL ):
скопировать код в буфер обмена
INSERT INTO `oc_product_optionsize` ( `product_id` )
SELECT `product_id` , `name`
FROM `oc_product_description `
WHERE `product_id` >= 88 AND `name` NOT LIKE "%набор%" ;
UPD: Подправил запрос.
Строитель
Отправлено: 30 Августа, 2017 - 21:09:18 • Тема: Парсинг данных • Форум: Вопросы новичков
Ответов: 10 Просмотров: 661
Нуб-2 Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
$str = '<div class="panel">
<div class="hr padded"></div> <div class="rightDetailsBlock">
<div class="hr padded"></div>
<div class="rightDetailsBlock">
<div class="detailsStatsContainerLeft">
<div class="detailsStatLeft">Posted </div>
<div class="detailsStatLeft">Updated </div>
</div>
<div class="detailsStatsContainerRight">
<div class="detailsStatRight">25 Aug @ 7:39pm</div>
<div class="detailsStatRight">29 Aug @ 5:51am</div>
</div>
<div style="clear:left"></div>
</div>
</div>
<div class="panel">
<table class="stats_table">
<tbody><tr>
<td>467</td>
<td>Unique Visitors</td>
</tr>
<tr>
<td>3</td>
<td>Current Favorites</td>
</tr>
</tbody></table></div>' ;
$patt = '~
<div\sclass="detailsStatRight">(?<date>.+)</div>
|<td>(?<numb>\d+)</td>
~x' ;
echo '<pre>' ; var_dump ( $date , $numb ) ; echo '</pre>' ; /* Результат:
array(2) {
[0]=> string(15) "25 Aug @ 7:39pm"
[1]=> string(15) "29 Aug @ 5:51am"
}
array(2) {
[2]=> string(3) "467"
[3]=> string(1) "3"
}
*/
Строитель
Отправлено: 25 Августа, 2017 - 21:24:46 • Тема: Очистка массива по ключу • Форум: Вопросы новичков
Ответов: 7 Просмотров: 383
Nizz , я тут набросал пример, как правильно использовать пользовательские функции. Скопируйте его целиком в отдельный php файл, и запустите в браузере. Код прокомментирован, но если будут вопросы, то задавайте:Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
// Получаем массив данных
$productsInCart = getProducts( ) ;
// Количество элементов в массиве до обработки
echo count ( $productsInCart ) . '<br />' ;
// Эмулируем передачу из html-формы
$_POST [ 'dealete' ] = true ;
// Ключ элемента для удаления
$_POST [ 'key' ] = 5 ;
// Если нажата кнопка
if ( isset ( $_POST [ 'dealete' ] ) ) { $key = ( int) $_POST [ 'key' ] ;
if ( deleteProducts( $key , $productsInCart ) ) {
$view = 'Запись успешно удалена!' ;
} else {
$view = 'Произошла ошибка удаления!' ;
}
}
// Количество элементов в массиве после обработки
echo count ( $productsInCart ) . '<hr />' ; // Вывод сообщения
echo $view ;
// Обратите внимание, второй аргумент передаётся по ссылке &
function deleteProducts( $key , & $arr ) {
// Если есть ключ в массиве
// Удаляем элемент
return true ;
}
return false ;
}
function getProducts( ) {
}
Строитель
Отправлено: 25 Августа, 2017 - 19:47:37 • Тема: Очистка массива по ключу • Форум: Вопросы новичков
Ответов: 7 Просмотров: 383
rgl пишет: Строитель пишет: rgl пишет: А разве внутри foreach можно из массива что-то удалять?
Если передавать в цикл значение по ссылке, то можно.
Разве??
Если передавать ЗНАЧЕНИЕ по ссылке то можно ЗНАЧЕНИН и менять (т.е. ключ остается тот же, значение становится другим), но нельзя делать что-либо, что меняет ключи, т.е. добавлять или удалять элементы. А в примере как раз было удаление.
Об изменении структуры массива спорить не буду. Помню только, что с помощью unset() удалялись элементы из массива. Доберусь до ПК, проверю.
Строитель
Отправлено: 25 Августа, 2017 - 18:17:24 • Тема: Очистка массива по ключу • Форум: Вопросы новичков
Ответов: 7 Просмотров: 383
rgl пишет: А разве внутри foreach можно из массива что-то удалять?
Если передавать в цикл значение по ссылке, то можно.
Строитель
Отправлено: 25 Августа, 2017 - 01:16:15 • Тема: Создание ссылки из GET и POST-параметров • Форум: Вопросы новичков
Ответов: 12 Просмотров: 1484
Скопируйте код целиком, и запустите в браузере. После тестирования вам станет понятен принцип его работы, и тогда подправите в коде ссылки, а так же искомые и заменяемые значения (всё прокомментировано) :Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
// Демо-ссылка для запуска скрипта
$link = '<a href="?utm_term=1&utm_content=2">Link</a>' ;
// Собираем URL для будущей ссылки
$home = 'http://' . strip_tags ( $_SERVER [ 'HTTP_HOST' ] ) ; // Собираем URL для атрибута action из html-формы
$act = $home . strip_tags ( $_SERVER [ 'QUERY_STRING' ] ) ;
// Принимаем GET параметры
$utmTerm = ! empty ( $_GET [ 'utm_term' ] ) ?
$_GET [ 'utm_term' ] : '' ; $utmCont = ! empty ( $_GET [ 'utm_content' ] ) ?
$_GET [ 'utm_content' ] : '' ;
// Если был переход по ссылке
// Что ищем
$need = [ $utmTerm , $utmCont ] ;
// На что меняем
$repl = [ 'Раз' , 'Два' ] ;
// Производим замену GET параметров
}
// Если была нажата кнопка
if ( $_SERVER [ 'REQUEST_METHOD' ] == 'POST' ) {
// Принимаем POST параметры
$from = ! empty ( $_POST [ 'from' ] ) ?
$_POST [ 'from' ] : '' ; $to = ! empty ( $_POST [ 'to' ] ) ?
$_POST [ 'to' ] : '' ;
// Если уже были получены GET параметры
// Что ищем
$need = [ $from , $to ] ;
// На что меняем
$repl = [ 'Отправитель' , 'Получатель' ] ;
// Производим замену POST параметров
// Дописываем в URL изменённые параметры
// Активируем флаг для включения отображения
$trigger = 1 ;
} else {
echo '<h4>Сначала надо перейти по ссылке!</h4>' ;
}
} else {
echo '<h4>Поля обязательны для заполнения!</h4>' ;
}
}
$form = '
<form action="' . $act . '" method="post">
<input type="text" name="from"/>
<input type="text" name="to"/>
<input type="submit" value="send"/>
</form>
' ;
echo empty ( $_SERVER [ 'QUERY_STRING' ] ) ?
'»» ' . $link : ( empty ( $trigger ) ?
$form : $home ) ;
Страниц (106): В начало « ... 42 43 44 45 [46] 47 48 49 50 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB