PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (27): [1] 2 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 391
vlados Отправлено: 16 Января, 2013 - 22:02:51 • Тема: Вот что тут не так списал с книги ужас... не понимаю... • Форум: Вопросы новичков

Ответов: 10
Просмотров: 383
Документацию или вебинары специалиста.
vlados Отправлено: 16 Января, 2013 - 21:59:40 • Тема: Буферизация вывода • Форум: Вопросы новичков

Ответов: 0
Просмотров: 67
Здравствуйте!

Итак, у меня есть файл log.tpl

CODE (html):
скопировать код в буфер обмена
  1. <div class="asds">{OUTPUTLN}</div>


и скрипт, который во время работы делает вывод каких либо данных (например, ошибок или попросту обычная log информация).

До этого момента у меня все работало как надо с обычным flush(), но теперь я решил подключить и дизайн, поэтому мне как то надо все это сделать иным способом.

Я думаю, что можно сделать примерно так, но как это реализовать правильно???
PHP:
скопировать код в буфер обмена
  1.  
  2. $html = file_get_contents('./tpl/log.tpl');
  3. buffer(function($str){$html = str_replace('{OUTPUTLN}', $str.'<br>{OUTPUTLN}',$html);return str_replace('{OUTPUTLN}', '',$html);});
  4.  
  5. function work(){
  6.    // work...
  7.    // write string
  8.    echo "Sth log info";
  9.    buffer_flush();
  10. }
  11.  
  12. function another_work(){
  13.    // work...
  14.    // write string
  15.    echo "Sth log info";
  16.    buffer_flush();
  17. }
  18. echo 'start work';
  19.  
  20. work();
  21. another_work();
  22.  
  23. echo 'end work';


И результат будет такой:

CODE (html):
скопировать код в буфер обмена
  1.  
  2. <div class="asds">
  3.     start work<br>
  4.     Sth log info<br>
  5.     Sth log info<br>
  6.     end work<br>
  7. </div>
  8.  
vlados Отправлено: 21 Декабря, 2012 - 22:24:47 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Извините, но я что то не нашел того о чем вы пишите.
Вопрос остается открытым. Как вытащить 12 случайных записей из очень большой таблицы?
vlados Отправлено: 21 Декабря, 2012 - 14:24:18 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
CODE (SQL):
скопировать код в буфер обмена
  1. разницы между COUNT(ID) и SELECT COUNT(*) нет абсолютно никакой  
  2.  

Да я просто не на те цифры смотрел Улыбка
(Добавление)
Теперь появился вопрос, мне нужно вытащить 12 случайных записей. Как это сделать максимально быстро?


SELECT COLUMN FROM TABLE ORDER BY RAND() LIMIT 12

Выполняется 3 секунды.
vlados Отправлено: 21 Декабря, 2012 - 14:17:58 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
eai, ваш вариант вполне рабочий. Я просто немного не туда смотрел Улыбка Спасибо.

Теперь появился вопрос, мне нужно вытащить 12 случайных записей. Как это сделать максимально быстро?


CODE (SQL):
скопировать код в буфер обмена
  1. SELECT COLUMN FROM TABLE ORDER BY RAND() LIMIT 12

Выполняется 3 секунды.
vlados Отправлено: 21 Декабря, 2012 - 13:46:27 • Тема: защита от sql иньекций • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 66
Для чисел хватит int()
А вот чтобы реально защитить текст от почти всех уязвимостей, нужно попотеть. Как пример, посмотрите как реализована подобная защита в популярных фреймворках.
vlados Отправлено: 21 Декабря, 2012 - 12:36:35 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Ваш вариант работает 2-3 сек.
Первичный ключ есть, это ID.
vlados Отправлено: 21 Декабря, 2012 - 12:26:07 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Цитата:
Совсем не понятно если честно в чем ваша проблема.

Нужно быстро получить количество записей из таблицы.

Цитата:
Колбасить 200к записей, да это не верно, если это реально необходимо то покупай StoreWise + X5 от одной очень большой и голубой конторы.

Колбасить ничего не нужно. Мне нужно лишь чиcло (INT) записй в таблице, не более. Да и к тому же, у меня есть сервер, вполне неплохой.
vlados Отправлено: 21 Декабря, 2012 - 12:12:47 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Нет. Тогда как сделать?
vlados Отправлено: 21 Декабря, 2012 - 12:02:46 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Ну а вот вам и вариантик Улыбка

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT id FROM DATA ORDER BY id DESC LIMIT 1;

(Добавление)
NoPaper, ваш вариант будет выполняться секунд 5.
vlados Отправлено: 21 Декабря, 2012 - 11:55:18 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Да, верно. Такой вариант я отбросил и взял вот этот

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT SQL_NO_CACHE id,keyword FROM DATA WHERE id>10 ORDER BY id LIMIT 20;


Теперь мне нужно как можно быстрее узнать сколько всего записей в таблице! Как это можно сделать??
vlados Отправлено: 21 Декабря, 2012 - 11:36:38 • Тема: Работа с более чем 200.000 записями • Форум: Работа с СУБД

Ответов: 29
Просмотров: 4460
Ну вот.

Код SQL

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT SQL_CALC_FOUND_ROWS id,keyword FROM DATA LIMIT 0,10


Выполняется 2.9183 сек

Таблица



Если прикинуть, что полная таблица будет весить где то 2Гб.... Что же делать????? А?! А?! А?!
vlados Отправлено: 19 Декабря, 2012 - 23:57:56 • Тема: Невалидный JSON, требуется регулярка или способ • Форум: Напишите за меня, пожалуйста

Ответов: 7
Просмотров: 153
Этого я и опасался. Но ничего, я лучше заново все перепаршу Улыбка

Всем спасибо за ответы и за потраченное время.
vlados Отправлено: 19 Декабря, 2012 - 23:38:07 • Тема: Невалидный JSON, требуется регулярка или способ • Форум: Напишите за меня, пожалуйста

Ответов: 7
Просмотров: 153
У меня 4 файла по 100 мб. Нужно их как то привести к нормальному виду. неважно как, главное не руками Улыбка

Буду несказанно рад, если вы предложите адекватную мысль.
vlados Отправлено: 19 Декабря, 2012 - 23:32:08 • Тема: Невалидный JSON, требуется регулярка или способ • Форум: Напишите за меня, пожалуйста

Ответов: 7
Просмотров: 153
Вашим вариантом я заменю ВСЕ символы ", а мне надо заменить символ " в между "".

Т.е. чтобы из

CODE (SQL):
скопировать код в буфер обмена
  1. {"sth":"Что то где то и когда то сказануло мне "Привет мой гость родной, помоги vlados`ику с регуляркой!""}
  2. {"regexp":"Что за нах, что за нах, ненавижу я "регэкспы'! "}


Стало

CODE (SQL):
скопировать код в буфер обмена
  1. {"sth":"Что то где то и когда то сказануло мне 'Привет мой гость родной, помоги vlados`ику с регуляркой!'"}
  2. {"regexp":"Что за нах, что за нах, ненавижу я 'регэкспы'! "}

Страниц (27): [1] 2 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB