Ответы пользователя по тегу PHP
  • В какую кодировку конвертировать строку с данными символами?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вот тут про преобразования, возможно поможет, хотя сегодня сайт на 1251 это только от сильной нелюбви к себе или "в наследство досталось".
    Ответ написан
  • Сайт на двух языках?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Так, спокойно, бывает и такое еще )
    Так, ну-с, начнем с того что все что приходит на любой урл, который не существует и на любой урл который не картинка/цсс/жс/чтонадоеще перекидываем на index.php.
    например так:

    В .htaccess:
    RewriteBase /
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
    RewriteRule !\.(js|ico|gif|jpg|png|css|pdf|mov|mp3)$ index.php


    Далее в коде парсим урл, разделяя его по "/", если в нужном месте стоит один из языков - меняем язык отображения на нужный. Далее любая магия на Ваш выбор - инклуды нужного языка, запрос к базе языковых переменных, массив слов перевода - варианты извращений не бесконечны, но весьма разнообразны, в 90х-00х народ чего только не лепил ))

    PS: ПОЧИТАЙТЕ ПРО ОБЪЕКТЫ, MVC, СОВРЕМЕННЫЕ МЕТОДЫ РАЗРАБОТКИ, ФРЕЙМВОРКИ...
    Ответ написан
  • Почему exec прерывает программу?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    тут на англицком, по-русски и коротко - каждой из команд назначается вывод в дев/нулл, и в конце всей строки с командами отправляется в отдельный поток выполнения(строка заканчивается &) . Попробуйте, под линем должно сработать )
    Ответ написан
    Комментировать
  • Как обработать строку, полученную через curl в данной ситуации?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    <? 
    $string = 'a good apple'; 
    $symbol = 'a'; 
    $ascii = ord($symbol); 
    $string = str_replace($symbol, "&#$ascii;", $string); 
    ?>


    или как тут
    Ответ написан
    Комментировать
  • Как в input сделать вывод из БД?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    мм, ну хоть отлично делает вывод....
    <?
    $someText = $row['some_text'];
    ?>
    <input type="text" value="<?=$someText;?>">


    Откуда Вы этот код берете? В 90е за ним на машине времени ездите???
    Ответ написан
    1 комментарий
  • Как отследить загрузилось ли изображение?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    js? Например по онлоаду пройтись по всем имажам и посмотреть их размер, если он какой-то неправильный - вставить вместо него заглушку. Как выглядит неправильный имаж - не справшивай, лень проверять, тут тебе пространство для творчества )
    Ответ написан
    Комментировать
  • Цикл while для выборки из базы?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Извините, я прерву предыдущих ораторов, создалось впечатление что автор не совсем то же что отвечающие имел в виду, и, если я верно понял вопрос, отвечу:

    Для ВЫБОРКИ из базы здесь НЕ ИСПОЛЬЗУЕТСЯ цикл, цикл используется для вывода РЕЗУЛЬТАТОВ ВЫБОРКИ из базы, весь набор уже получен и теперь только выводится в цикле. Выборка осуществляется в строке
    $res = mysqli_query($cnn,$query);
    после этого в $res хранится ссылка на ресурс со всей выборкой.
    mysqli_fetch_array($res) создает массив из строчки, на которую в данный момент указывает внутренний указатель и переводит данный указатель на следующую строку выборки. RTFM. И да пребудет с Вами сила чтения мануала )

    А делать запрос в цикле - да, дурной тон и дурная идея.
    Ответ написан
    Комментировать
  • Как уменьшить трафик при использовании readfile с внешнего сервера?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    трафик при отдаче 500 * 1Мб * 3шт. = ~1 500 Мб = ~12 000 мбит, учитывая что это картинки и они почти не жмутся, вариант только пережимать картинки у себя на сервере - либо с меньшим разрешением, либо с меньшим качеством.
    плюс NGINX для скорости? Кажется он налету умеет уменьшать картинки.
    ИМХО.
    Ответ написан
    Комментировать
  • Вывод из БД в textarea?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Очевидно, что с кавычками у вас лажа, я бы рекомендовал:
    во-первых почитать про кавычки в пхп (к Михаилу это тоже относится);
    во-вторых вместо конструкции
    while($row=mysql_fetch_array($result)){
    echo 'Текст<br><textarea name='main_text' id='main_text' cols=37 rows=5>".$row['main_text']."</textarea>';};

    напишите
    while($row=mysql_fetch_array($result)){ ?>
    Текст
    <br>
    <textarea name='main_text' id='main_text' cols=37 rows=5>
    <?=$row['main_text'];?>
    </textarea>
    <?};?>

    Это будет и более структурировано, и более понятно(надеюсь).
    В коментах отписались что выводит только белый экран - тестируйте вывод, первой строкой впишите простой вывод текста типа <? echo "start";?>, если выводится - значит запрос скорее всего отдал пустое значение, попробуйте сделать var_dump() на переменные после запроса.
    и да, $result=mysql_query('SELECT column FROM `main_text`'); это вообще что и куда выбирает???
    Ответ написан
  • Как передать переменную из встроенного скрипта во внешний?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    <script type="text/javascript">
        alert (<?php=$isEdit'; ?>);
    </script>

    ?
    или в чем вопрос?
    Ответ написан
    Комментировать
  • Какой реализовать механизм хранения превьюшек?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    сжатие на лету - не есть нагрузка на сервер, это как раз кажется мне самым разумным решением. @rowdyro предложил красивое решение, ставим кэш подлиннее, дней этак на 30, и ВСЕ, все картинки есть в кэше, ничего больше грузиться не будет. 1 раз, когда ПЕРВЫЙ пользователь смотрит последнюю добавленную новость - 1 раз(!) сделается 4 картинки на лету, и все, дальше все идет из кэша.
    Ответ написан
  • Какой реализовать механизм хранения превьюшек?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Давно(7 лет назад) на большом проекте делали так: в базе хранились имена файлов, (путь настраивался через свойство объекта), а превьюшки просто имели постфикс аля 234342_s.jpg(кста так flickr пашет). Сегодня модно не хранить превью, а уменьшать большие картинки средствами CSS/HTML на стороне клиента, бо полосы позволяют, а место не резиновое и не бесплатное ), но это и сегодня вопрос спорный, экономим ли мы при превьюшках трафик, т.к. при просмотре потом большого изображения все равно большая фотка тянется, а так она уже загружена, открывается сразу. Так что тут еще вопрос - насколько большая картинка больше превью, стоит ли огород городить или грузить сразу большую вставлять. Имхо, есть смысл если ВСЕ полные картинки больше чем ~800*600 точек или ~100кб делать иконки, иначе просто вставлять как есть.
    Ответ написан
    Комментировать
  • Как в цикле производить select и/или insert запросы к базе (цикл примерно 50к итераций)?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Может делать так? Тут после роллбэка еще раз делаем запрос тот же, и так или по кругу пока не вставится, или писать свою обработку ексепшна.
    А данные да, надо пачками формировать, штук по 500 нормально, при хорошем сервере это пару сек даже с 1000к записей, если разделить слипами - вообще думаю никто не заметит особых тормозов.
    Ответ написан
    Комментировать