PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (15): « 1 2 [3] 4 5 6 7 8 9 ... » В конец
Найдено сообщений: 223
Telnet
Отправлено: 07 Ноября, 2015 - 14:40:05 • Тема: Сохранение cvs в utf8 без BOM • Форум: Кодировки и все смежное
Ответов: 5 Просмотров: 3376
Все разобрался короче каждое поле которое у нас не в utf 8 привожу к utf-8
и теперь все сохраняет в UTF-8
проблема как я понял была в том что не которые данные файл читал с инета а они видимо были как раз в windows-1251
Telnet
Отправлено: 07 Ноября, 2015 - 11:42:22 • Тема: Сохранение cvs в utf8 без BOM • Форум: Кодировки и все смежное
Ответов: 5 Просмотров: 3376
Спасибо я знаю что это
fprintf($handle, chr(0xEF).chr(0xBB).chr(0xBF));
метка BOM
я ее для эксперимента добавил
если ее удалить то файл записывается в кодировке windows-1251
и приходится его каждый раз его перекодировать.
Так нужно перед записью перекодировать все в utf8
у меня там просто много полей в этот файл пишут нужно перед записью каждое поле перекодировать?
Telnet
Отправлено: 06 Ноября, 2015 - 15:34:43 • Тема: Сохранение cvs в utf8 без BOM • Форум: Кодировки и все смежное
Ответов: 5 Просмотров: 3376
Всем привет.
Нужно сохранять файл cvs обязательно в кодировке utf8 без BOM
PHP:
скопировать код в буфер обмена
<?PHP
/**
* Класс для работы с csv-файлами
* @author дизайн студия ox2.ru
*/
class CSV {
private $_csv_file = null ;
/**
* @param string $csv_file - путь до csv-файла
*/
public function __construct( $csv_file ) {
$handle = fopen ( $csv_file , "w" ) ; if ( $handle ) {
$this -> _csv_file = $csv_file ;
} else {
throw new Exception( "Файл " . $csv_file . " не найден" ) ;
}
}
public function setCSVLine
( Array $csv ) { //Открываем csv для до-записи,
//если указать w, то ифнормация которая была в csv будет затерта
$handle = fopen ( $this -> _csv_file
, "a" ) ; fputcsv ( $handle , $csv , ";" ) ; //Записываем массив данных одной строкой, 3-ий параметр - разделитель поля }
}
?>
Сначало было без fprintf($handle, chr(0xEF).chr(0xBB).chr(0xBF)); так писало в windows 1251, потом в нете нашел fprintf($handle, chr(0xEF).chr(0xBB).chr(0xBF)); поставил теперь пишется в utf8 с BOM, а нужно без BOM,
Прошу помочь разобраться.
Telnet
Отправлено: 13 Августа, 2015 - 16:38:16 • Тема: Поиск файла htpasswd в корне сайта • Форум: Администрирование *nix
Ответов: 0 Просмотров: 663
Всем привет
поставил базовую http авторизацию, меня она полностью устраивает.
Вопрос вот в чем сейчас в строке
AuthUserFile F:\OpenServer5\domains\my.local\.htpasswd
т.е нужно писать полное имя
при переносе с локального сервера на рабочий тут опять нужно писать новый путь
возможно сделать как то что б он сам сразу искал этот файл в папке с сайтом
AuthUserFile .htpasswd
так пробовал не работает , в логах пишет что так он начинает искать от папки куда установлен Apache
Telnet
Отправлено: 25 Июля, 2015 - 16:06:39 • Тема: Рекурсия • Форум: Объектно-ориентированное программирование
Ответов: 2 Просмотров: 959
Не много пораскинув серым веществом
понял что было не так
дело в условии in_array($key, $tmp) нужно так end($tmp) == $key)
PHP:
скопировать код в буфер обмена
<?PHP
class Tmp{
static function getTmp( $tmp , $tmp2 ) {
//echo '<br><br>';
foreach ( $tmp2 as $key => $val ) { //var_dump(end($tmp) == $key);echo '<br>';
$tmp [ $val ] = $val ; //echo "<pre>".print_r($tmp, true)."</pre>";
self :: getTmp ( $tmp , $tmp2 ) ;
}
} echo "<pre>" . print_r ( $tmp , true ) . "</pre>" ; return $tmp ;
}
}
1 => 0,
62 => 0,
65 => 0,
8 => 0,
69 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
58 => 0,
87 => 0,
88 => 0,
93 => 0,
2 => 1,
78 => 1,
60 => 1,
77 => 1,
68 => 1,
24 => 1,
32 => 1,
28 => 2,
29 => 2,
79 => 2,
80 => 2,
34 => 2,
33 => 2,
39 => 2,
40 => 2,
41 => 3,
43 => 3,
44 => 3,
45 => 3,
46 => 3,
15 => 14,
16 => 14,
17 => 14,
82 => 34,
83 => 34,
84 => 34,
86 => 34
) ;
$tmp = Tmp:: getTmp ( $tmp , $tmp2 ) ;
echo "<pre>" . print_r ( $tmp , true ) . "</pre>" ; die
( ) ; ?>
Теперь получаю
Array
(
[86] => 86
[34] => 34
[2] => 2
[1] => 1
)
Array
(
[86] => 86
[34] => 34
[2] => 2
[1] => 1
)
Array
(
[86] => 86
[34] => 34
[2] => 2
)
Array
(
[86] => 86
[34] => 34
)
В конце
Array
(
[86] => 86
[34] => 34
)
а мне нужно что б возвращало
Array
(
[86] => 86
[34] => 34
[2] => 2
[1] => 1
)
т.е то что получается в конце, в самом вложеном вызове функции getTmp
(Добавление)
Разобрался
нужно было присваивать результат в рекурсии
$tmp = self::getTmp($tmp, $tmp2 );
Telnet
Отправлено: 25 Июля, 2015 - 14:51:46 • Тема: Рекурсия • Форум: Объектно-ориентированное программирование
Ответов: 2 Просмотров: 959
Всем привет.
Есть такой вот массив
представлюящий из себя дерево
PHP:
скопировать код в буфер обмена
(
[ 1 ] => 0
[ 62 ] => 0
[ 65 ] => 0
[ 8 ] => 0
[ 69 ] => 0
[ 3 ] => 0
[ 4 ] => 0
[ 5 ] => 0
[ 6 ] => 0
[ 7 ] => 0
[ 58 ] => 0
[ 87 ] => 0
[ 88 ] => 0
[ 93 ] => 0
[ 2 ] => 1
[ 78 ] => 1
[ 60 ] => 1
[ 77 ] => 1
[ 68 ] => 1
[ 24 ] => 1
[ 32 ] => 1
[ 28 ] => 2
[ 29 ] => 2
[ 79 ] => 2
[ 80 ] => 2
[ 34 ] => 2
[ 33 ] => 2
[ 39 ] => 2
[ 40 ] => 2
[ 41 ] => 3
[ 43 ] => 3
[ 44 ] => 3
[ 45 ] => 3
[ 46 ] => 3
[ 15 ] => 14
[ 16 ] => 14
[ 17 ] => 14
[ 82 ] => 34
[ 83 ] => 34
[ 84 ] => 34
[ 86 ] => 34
)
Мне его нужно обработать и получить такой массив
PHP:
скопировать код в буфер обмена
class Tmp{
static function getTmp( $tmp , $tmp2 ) {
foreach ( $tmp2 as $key => $val ) {
$tmp [ $val ] = $val ;
self :: getTmp ( $tmp , $tmp2 ) ;
}
}
return $tmp ;
}
}
1 => 0,
62 => 0,
65 => 0,
8 => 0,
69 => 0,
3 => 0,
4 => 0,
5 => 0,
6 => 0,
7 => 0,
58 => 0,
87 => 0,
88 => 0,
93 => 0,
2 => 1,
78 => 1,
60 => 1,
77 => 1,
68 => 1,
24 => 1,
32 => 1,
28 => 2,
29 => 2,
79 => 2,
80 => 2,
34 => 2,
33 => 2,
39 => 2,
40 => 2,
41 => 3,
43 => 3,
44 => 3,
45 => 3,
46 => 3,
15 => 14,
16 => 14,
17 => 14,
82 => 34,
83 => 34,
84 => 34,
86 => 34
) ;
$tmp = Tmp:: getTmp ( $tmp , $tmp2 ) ;
echo "<pre>" . print_r ( $tmp , true ) . "</pre>" ; die
( ) ;
Скрипт заканчивается тем что пишет Веб-страница недоступна ошибок в логах нет
Telnet
Отправлено: 11 Июля, 2015 - 13:25:22 • Тема: Проверка объекта на пустоту • Форум: Объектно-ориентированное программирование
Ответов: 1 Просмотров: 3712
Друзья всем привет.
Подскажите как проверить объект на содержание в нем хоть 1 свойства
что так писать
что так
результат один и тот же bool(false)
т.е не отражается каким либо образом пустой объект или нет.
Подскажите как будет правильно проверить?
Telnet
Отправлено: 21 Июня, 2015 - 18:58:28 • Тема: Настройка .htaccess обращение к файлам php без указания их расширения • Форум: Apache и другие веб-серверы
Ответов: 2 Просмотров: 573
Пробую такое содержимое файла
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)$ $1.php
для такого адреса
mysite.ru/list
файл list.php не вызывается хотя папки list в корне сайта я пока не создавал
пробую даже так
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^list$ list.php
все равно не вызывается файл list.php
так работает mysite.ru/list.php
но нужно сделать что б без указания расширения
Нашел решение в нете
RewriteEngine On
RewriteRule ^(\w+)$ $1.php [NC]
Telnet
Отправлено: 19 Июня, 2015 - 13:31:56 • Тема: Замена подстроки только 1 раз • Форум: JavaScript & VBScript
Ответов: 0 Просмотров: 379
Всем привет
Есть примерно вот такой код
<svg xmlns="http://www.w3.org/2000/svg" style="left: -0.31px; top: -0.33px; overflow: hidden; position: relative;" width="410" height="435" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:NS1="" NS1:xmlns:xlink="http://www.w3.org/1999/xlink">
В нем нужно оставить только 1 аттрибут xmlns="http://www.w3.org/2000/svg"
не важно какой 1 или 2 определение того что тут 2 таких аттирибута я написал сам
CODE (
javascript ):
скопировать код в буфер обмена
found = svg.match ( /xmlns="http:\/\/www.w3.org\/2000\/svg"/g ) ;
if ( found.length == 2 ) {
//тут должно быть удаление подстроки если она встречается дважды
svg = svg.replace ( /xmlns="http:\/\/www.w3.org\/2000\/svg"/ , '' ) ;
}
Сам решил
а вот как убрать из строки только одну подстроку ни как не получается
Telnet
Отправлено: 29 Мая, 2015 - 17:39:25 • Тема: Получение данных из iframe отличных от html • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 1301
нет там просто сразу передается xml не подготовленный для работы в браузере,
это я думаю как можно этот xml получить каким нить отличным от аякс методом
В панели разработчика я же как то вижу этот xml вот и думаю как можно к нему подобраться или ни как?
(Добавление)
DeepVarvar пишет: Да не надо делать скриптом.
Можете показать пример.
Telnet
Отправлено: 29 Мая, 2015 - 17:34:09 • Тема: Получение данных из iframe отличных от html • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 1301
CODE (
javascript ):
скопировать код в буфер обмена
getMotoShips( ) ;
function getMotoShips( ) {
var ifr= $( '<iframe/>' , {
id: 'MainPopupIframe' ,
src: 'http://other-domain.com/123.htm' ,
style: 'display:none' ,
load: function ( ) {
$( this ) .show ( ) ;
alert ( 'iframe loaded !' ) ;
}
} ) ;
$( 'body' ) .append ( ifr) ;
//console.log($("#MainPopupIframe").text());
var x = document.getElementById ( "MainPopupIframe" ) ;
var y = ( x.contentWindow || x.contentDocument ) ;
if ( y.document ) y = y.document ;
console.log ( y.getElementsByTagName ( "root" ) ) ;
}
DeepVarvar пишет: Ну сделай через тег скрипта. В чем проблема?
не совсем понял Вашу идею
Страниц (15): « 1 2 [3] 4 5 6 7 8 9 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB