ФорумПрограммированиеPHP для идиотов → выборка из БД

выборка из БД

  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 16:04, спустя 13 дней 16 часов 7 минут

    Привет вем. Похожий вопрос у меня.
    Нужно считать данные с БД и записать в тексовый файл, в формате js. Есть код, но слишком замудреный, нужен попроще. Далее, из этого файла информация размещается на html страничке джаваскриптом.
    В идеале нужно, чтоб инфа бралась с двух баз данных, обе в разной кодировке.
    Может кот поможет с готовым исходником или объяснит все подробно.
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 16:06, спустя 2 минуты 21 секунду


    Привет вем. Похожий вопрос у меня.
    Нужно считать данные с БД и записать в тексовый файл, в формате js. Есть код, но слишком замудреный, нужен попроще. Далее, из этого файла информация размещается на html страничке джаваскриптом.
    В идеале нужно, чтоб инфа бралась с двух баз данных, обе в разной кодировке.
    Может кот поможет с готовым исходником или объяснит все подробно.

    можем объяснить, но пока ничего не понятно
    все умрут, а я изумруд
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 16:08, спустя 1 минуту 50 секунд

    Нужно считать данные с БД

    foreach ( $tables as $value )
    SELECT * FROM `".$value."`

    и записать в тексовый файл, в формате js

    JSON
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 16:19, спустя 10 минут 59 секунд

        /**
    * Convert a PHP scalar, array or hash to JS scalar/array/hash. This function is
    * an analog of json_encode(), but it can work with a non-UTF8 input and does not
    * analyze the passed data. Output format must be fully JSON compatible.
    *
    * @param mixed $a Any structure to convert to JS.
    * @return string JavaScript equivalent structure.
    */
    function php2js($a=false)
    {
    if (is_null($a)) return 'null';
    if ($a === false) return 'false';
    if ($a === true) return 'true';
    if (is_scalar($a)) {
    if (is_float($a)) {
    // Always use "." for floats.
    $a = str_replace(",", ".", strval($a));
    }
    // All scalars are converted to strings to avoid indeterminism.
    // PHP's "1" and 1 are equal for all PHP operators, but
    // JS's "1" and 1 are not. So if we pass "1" or 1 from the PHP backend,
    // we should get the same result in the JS frontend (string).
    // Character replacements for JSON.
    static $jsonReplaces = array(
    array("\\", "/", "\n", "\t", "\r", "\b", "\f", '"'),
    array('\\\\', '\\/', '\\n', '\\t', '\\r', '\\b', '\\f', '\"')
    );
    return '"' . str_replace($jsonReplaces[0], $jsonReplaces[1], $a) . '"';
    }
    $isList = true;
    for ($i = 0, reset($a); $i < count($a); $i++, next($a)) {
    if (key($a) !== $i) {
    $isList = false;
    break;
    }
    }
    $result = array();
    if ($isList) {
    foreach ($a as $v) {
    $result[] = JsHttpRequest::php2js($v);
    }
    return '[ ' . join(', ', $result) . ' ]';
    } else {
    foreach ($a as $k => $v) {
    $result[] = JsHttpRequest::php2js($k) . ': ' . JsHttpRequest::php2js($v);
    }
    return '{ ' . join(', ', $result) . ' }';
    }
    }


    это тебе надо?
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 19:08, спустя 2 часа 49 минут 39 секунд

    Спасибо за быстрый ответ, не расчитывал так скоро. Не буду повесть писать о том, что пытаюсь изучить PHP. По сути. Есть сайт в html, при нем форум. Пытаюсь вывести заголовки тем на страничку. БД форума в win-1251. Еще один сайт в Wordpress. Оба на одном сервере. БД второго сайта в UTF-8. Со второго сайта беру заголовки тем опять-же в html страничку. Исполняют два разных кода. Хотелось бы объединить в один код. Втотой код влияет временами на кодировку. То в опере появляются крякозябрики, то в IE.

    Мне ближе по пониманию принцип работы первого кода.
    В строку {$open_js} {$close_js} можно всавить дивы и кирилический текст. Далее скрипт считывает записанные данные и и на страничке html выводится инфа, как будто прописанная вручную.
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 19:20, спустя 11 минут 9 секунд

    Здесь исходный результат http://mobilelife.kz
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 19:29, спустя 9 минут 47 секунд

    мне лень вникать в код
    могу сказать только что для того чтобы оба движка работали с обной кодировкой надо делать запрос в БД
    SET NAMES UTF8

    или cp1251 как тебе больше нравиться
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 19:39, спустя 9 минут 19 секунд

    А подобного кода без примудростей не найдется?
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 19:40, спустя 1 минуту 27 секунд

    Начал разбитаться и на этом поплыл
    if ($js_export) {
    $js .= 'document.write("';
    foreach ($posts as $post) {
    $js .= '<li><h3><a href=\"'.get_permalink($post->ID).'\">'.tojava($post->post_title).'</a></h3>';
    $teaser = preg_split('/<!–more/',$post->post_content);
    $js .= tojava($teaser[0]).'</li><a href=\"'.get_permalink($post->ID).'\">&nbsp;&nbsp;&nbsp;>>>>></a><br />';
    break;
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 19:42, спустя 1 минуту 45 секунд

    или здесь плыву
      if($td_open==0)
    $sql->post=strip_tags($sql->post);
    $sql->post=substr($sql->post,0,200);
    $sql->post=str_replace("'", "", $sql->post);
    $html_buffer.=<<<EOF
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 19:44, спустя 2 минуты 5 секунд

    чем тебе не понравилась функция php2js

    там тока и надо что удалить "JsHttpRequest::"
    и работать так


    {$open_js}
    var object = php2js($array);
    {$close_js}
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 11 ноября 2008 г. 20:00, спустя 16 минут 12 секунд

    Олег, я готовый код пишу тока за деньги :)
  • Олег

    Сообщения: 177 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 21:01, спустя 1 час 34 секунды

    CTAPbIu_MABP, всех распугал. Понимаю, с ценой сложно определиться, объем то работы на целый год. Шутка.
    А форум не плохой, энтузиастам огромное спаибо. Полистав, нашел некоторые объяснения и ссылки. Если не возражаете, буду заходить.
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 11 ноября 2008 г. 22:32, спустя 1 час 31 минуту 31 секунду

    Если не возражаете, буду заходить.

    Адекватным людям всегда рады :)
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 12 ноября 2008 г. 11:59, спустя 13 часов 26 минут 31 секунду

    Олег, заходи)))

Пожалуйста, авторизуйтесь, чтобы написать комментарий!