PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (304): В начало « ... 258 259 260 261 [262] 263 264 265 266 ... » В конец
Найдено сообщений: 4551
Viper
Отправлено: 10 Февраля, 2010 - 11:29:41 • Тема: Что не так с регуляркой? • Форум: Регулярные выражения
Ответов: 11 Просмотров: 530
Champion спсб! получилось. и вопрос в продолжение... если к примеру строка вида
CODE (
html ):
скопировать код в буфер обмена
</ h5 ><small > (<a href = "/wga" > WGA</ a > )</ small ></ td ></ tr ><tr ><td valign = "top" ><a href = "/name/nm0472567/" ></ a ></ td ><td > </ td ><td valign = "top" > (written by) & </td></tr><tr><td valign="top"><a href="/name/nm0649460/">Roberto Orci</a></td><td> </ td ><td valign = "top" > (written by) & </td></tr><tr><td valign="top"><a href="/name/nm0476064/">Alex Kurtzman</a></td><td> </ td ><td valign = "top" > (written by
т.е. можно ли выбрать все имена до определенного символа(ов к примеру ")<br>")
preg_match('@<a href="/name/nm\d{1,8}/">(.*)</a>@isU', $hit[1], $s);
он выведет только первое, что и понятно. как указать ему что "продолжить поиск" дальше "до"...
Viper
Отправлено: 10 Февраля, 2010 - 07:50:09 • Тема: курс валют • Форум: Работа с сетью
Ответов: 9 Просмотров: 4518
ну например с rbc.ru или finance.ua(для Ураины).
Viper
Отправлено: 09 Февраля, 2010 - 14:14:41 • Тема: Что не так с регуляркой? • Форум: Регулярные выражения
Ответов: 11 Просмотров: 530
есть такое
CODE (
html ):
скопировать код в буфер обмена
<td class = "nm" ><a href = "/name/nm0347797/" onclick = "(new Image()).src='/rg/castlist/position-1/images/b.gif?link=/name/nm0347797/';" > bullet</ a ></ td >
после
получаем такое
после
получаем трехпальцевую фигуру... В чем затык?
Viper
Отправлено: 09 Февраля, 2010 - 10:03:28 • Тема: Упростить цикл и... • Форум: Программирование на PHP
Ответов: 0 Просмотров: 184
Задача такова.
Есть таблица статистики stats с полями gid, grole, gstats.
Есть вторая таблица personal с полями id, role, published
Есть кнопка "Публиковать/Снять с публикации".
Поле role содержит записи вида "старший манагер, дворник, собутыльник по совместительству"
И есть такой код
PHP:
скопировать код в буфер обмена
$action = $publish ? 'archive' : 'unpublish' ;
echo "<script> alert('Выберите объект для $action '); window.history.go(-1);</script>\n " ;
}
$database -> setQuery ( "UPDATE `#__personal` SET `published` = '$publish ' WHERE id IN ($cids )" ) ;
if ( ! $database -> query ( ) ) {
echo "<script> alert('" . $database -> getErrorMsg ( ) . "'); window.history.go(-1); </script>\n " ;
}
$database -> setQuery ( "SELECT `role` FROM `#__personal` WHERE `id` IN ($cids )" ) ;
$rows = $database -> loadObjectList ( ) ;
foreach ( $rows as $row ) {
foreach ( $g as $gen ) {
$database -> setQuery ( "SELECT `gid` FROM `#__stats` WHERE `grole` LIKE '%$gen %'" ) ;
$id = $database -> loadResult ( ) ;
if ( $publish == 1) {
$database -> setQuery ( "UPDATE `#__stats` SET `g_stats` = `g_stats`+1 WHERE `g_id` = '" . ( int) $id . "'" ) ;
$database -> query ( ) ;
} else {
$database -> setQuery ( "UPDATE `#__stats` SET `g_stats` = `g_stats`-1 WHERE `g_id` = '" . ( int) $id . "'" ) ;
$database -> query ( ) ;
}
}
}
можно ли как-то упростить не переделывая структуру БД данный код. Учитывая что записей отмеченных к публикации или снятию может быть до 50 штук(т.е. пир таком виде как сейчас это примеро 50*3 запросов к бд).
Viper
Отправлено: 03 Февраля, 2010 - 15:35:05 • Тема: Алфавитный указатель • Форум: Программирование на PHP
Ответов: 10 Просмотров: 552
leshiy_SV пишет: это кажется будет выбирать тех авторов, в которых встречается эта буква, даже если она будет в середине фамилии, это так? если так то это не есть для меня хорошо
вы не правы.
а% найдет все записи начинающиеся на букву а
и ещё... в первом куске кода $sorting = trim($_REQUEST, 'sorting', '');
не правильно ) эт у мну с другой функцией работает так. вам нужно будет просто $sorting = trim($_REQUEST['sorting']);
Viper
Отправлено: 03 Февраля, 2010 - 15:20:14 • Тема: Алфавитный указатель • Форум: Программирование на PHP
Ответов: 10 Просмотров: 552
ну не обязательно прям в базу тулить все. намного проще сделать можно
делаем буквенный список вида
PHP:
скопировать код в буфер обмена
$sorting = trim ( $_REQUEST , 'sorting' , '' ) ; $base_url = 'index.php?sorting=' ;
< a href= "'.$base_url .'ruA.'" title= "А" > А</ a>
< a href= "'.$base_url .'ruB.'" title= "Б" > Б</ a>
< a href= "'.$base_url .'ruV.'" title= "В" > В</ a>
< a href= "'.$base_url .'ruG.'" title= "Г" > Г</ a>
< a href= "'.$base_url .'ruD.'" title= "Д" > Д</ a>
< a href= "'.$base_url .'ruE.'" title= "Е" > Е</ a>
< a href= "'.$base_url .'ruGE.'" title= "Ж" > Ж</ a>
< a href= "'.$base_url .'ruZ.'" title= "З" > З</ a>
< a href= "'.$base_url .'ruU.'" title= "И" > И</ a>
< a href= "'.$base_url .'ruK.'" title= "К" > К</ a>
< a href= "'.$base_url .'ruL.'" title= "Л" > Л</ a>
< a href= "'.$base_url .'ruM.'" title= "М" > М</ a>
< a href= "'.$base_url .'ruN.'" title= "Н" > Н</ a>
< a href= "'.$base_url .'ruO.'" title= "О" > О</ a>
< a href= "'.$base_url .'ruP.'" title= "П" > П</ a>
< a href= "'.$base_url .'ruR.'" title= "Р" > Р</ a>
< a href= "'.$base_url .'ruS.'" title= "С" > С</ a>
< a href= "'.$base_url .'ruT.'" title= "Т" > Т</ a>
< a href= "'.$base_url .'ruY.'" title= "У" > У</ a>
< a href= "'.$base_url .'ruF.'" title= "Ф" > Ф</ a>
< a href= "'.$base_url .'ruH.'" title= "Х" > Х</ a>
< a href= "'.$base_url .'ruC.'" title= "Ц" > Ц</ a>
< a href= "'.$base_url .'ruCH.'" title= "Ч" > Ч</ a>
< a href= "'.$base_url .'ruHA.'" title= "Ш" > Ш</ a>
< a href= "'.$base_url .'ruHE.'" title= "Щ" > Щ</ a>
< a href= "'.$base_url .'ruEA.'" title= "Э" > Э</ a>
< a href= "'.$base_url .'ruUA.'" title= "Ю" > Ю</ a>
< a href= "'.$base_url .'ruI.'" title= "Я" > Я</ a>
далее в alphabet.php
PHP:
скопировать код в буфер обмена
switch ( $sorting ) {
case 'ruA' : Sorting( 'А%' ) ; break ;
case 'ruB' : Sorting( 'Б%' ) ; break ;
case 'ruV' : Sorting( 'В%' ) ; break ;
case 'ruG' : Sorting( 'Г%' ) ; break ;
case 'ruD' : Sorting( 'Д%' ) ; break ;
case 'ruE' : Sorting( 'Е%' ) ; break ;
case 'ruGE' : Sorting( 'Ж%' ) ; break ;
case 'ruZ' : Sorting( 'З%' ) ; break ;
case 'ruU' : Sorting( 'И%' ) ; break ;
case 'ruK' : Sorting( 'К%' ) ; break ;
case 'ruL' : Sorting( 'Л%' ) ; break ;
case 'ruM' : Sorting( 'М%' ) ; break ;
case 'ruN' : Sorting( 'Н%' ) ; break ;
case 'ruO' : Sorting( 'О%' ) ; break ;
case 'ruP' : Sorting( 'П%' ) ; break ;
case 'ruR' : Sorting( 'Р%' ) ; break ;
case 'ruS' : Sorting( 'С%' ) ; break ;
case 'ruT' : Sorting( 'Т%' ) ; break ;
case 'ruY' : Sorting( 'У%' ) ; break ;
case 'ruF' : Sorting( 'Ф%' ) ; break ;
case 'ruH' : Sorting( 'Х%' ) ; break ;
case 'ruC' : Sorting( 'Ц%' ) ; break ;
case 'ruCH' : Sorting( 'Ч%' ) ; break ;
case 'ruHA' : Sorting( 'Ш%' ) ; break ;
case 'ruHE' : Sorting( 'Щ%' ) ; break ;
case 'ruEA' : Sorting( 'Э%' ) ; break ;
case 'ruUA' : Sorting( 'Ю%' ) ; break ;
case 'ruI' : Sorting( 'Я%' ) ; break ;
default : return ; break ;
}
function Sorting( $sort ) {
$like = "LIKE '$sort '" ;
$query = "SELECT `id`, `author_name`"
. "\n FROM `#__db_name` WHERE "
. $like
. "\n AND `published` = '1'"
. "\n ORDER BY `author_name` ASC" ;
// Далее выводим результаты в нужном виде
}
функция примерная.
Viper
Отправлено: 03 Февраля, 2010 - 15:06:28 • Тема: Скачивание файла • Форум: Программирование на PHP
Ответов: 5 Просмотров: 617
valenok пишет: А если отдавать поток по чуть-чуть, потом ставить usleep
в смысле поток? поподробнее пожалуйста.
сейчас функция выглядит как
PHP:
скопировать код в буфер обмена
function downloadFile( $filepath ) {
header ( 'HTTP/1.0 404 Not Found' ) ; return ;
}
$fm = @ fopen ( $filepath , 'rb' ) ; if ( ! $fm ) {
header ( 'HTTP/1.0 505 Internal server error' ) ; return ;
}
$begin = 0 ;
$end = $size ;
if ( isset ( $_SERVER [ 'HTTP_RANGE' ] ) ) { if ( preg_match ( '/bytes=\h*(\d+)-(\d*)[\D.*]?/i' , $_SERVER [ 'HTTP_RANGE' ] , $matches ) ) { }
}
@ ini_set ( 'zlib.output_compression' , 'Off' ) ; if ( $begin > 0 || $end < $size ) {
header ( 'HTTP/1.0 206 Partial Content' ) ; } else {
}
header ( 'Content-Type: application/octet-stream' ) ; header ( 'Cache-Control: public, must-revalidate, max-age=0' ) ; header ( 'X-Powered-By: Kinoarhiv' ) ; header ( 'Accept-Ranges: bytes' ) ; header ( 'Content-Length:' . ( $end - $begin ) ) ; header ( 'Content-Range: bytes ' . $begin - $end / $size ) ; header ( 'Content-Transfer-Encoding: binary\n' ) ; header ( 'Last-Modified: ' . $time ) ; $cur = $begin ;
echo fread ( $fm , min ( 1024
* 16
, $end - $cur ) ) ; $cur += 1024* 16 ;
}
}
usleep помог только в том плане что теперь мозилла хватает скачивание файла с первого раза и IE тоже, но загрузка сервера по прежнему 80-90% при скачивании и файл скачивается ровно на 28 819 678 байт хотя исходный размер намного больше.
Viper
Отправлено: 02 Февраля, 2010 - 16:23:27 • Тема: нужна помощь • Форум: Напишите за меня, пожалуйста
Ответов: 10 Просмотров: 111
1. у тега img нет атрибута title
2. все значения атрибутов нужно брать в двойные кавычки
3. CODE (
html ):
скопировать код в буфер обмена
<a href = "image_url.jpg" target = "_blank" ><img class = "park" src = "./im/pr/'.basename($ar['img']).'" align = "left" alt = "'.substr($text,0,25).'..." / ></ a >
Страниц (304): В начало « ... 258 259 260 261 [262] 263 264 265 266 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB