[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Ну мы немного не о том говорили.

    В чем разница между статическими типами и динамическими и откуда тормоза?

    При построении таблицы выборки MySQL должен узнать размеры памяти, которую необходимо выделить под определенный столбец.

    При использовании статических типов эта величина заранее известна из описания структуры и каждый раз не перепроверяется.

    При мспользовании динамических полей заранее неизвестна длина самого большого поля в строке, поэтому мусткулу приходится "пробежаться" по всем значениям, дабы узнать максимальную длину и выделить соответсятвующий объем памяти для каждой ячейки в столбце.

    Вот это время и есть критично.

    Разница между char и varchar:
    При построении таблицы выборки для char(N) и для varchar(N) выделяется равный размер памяти, который берется из описания структуры таблицы.
    Разница этих типов в представлении данных таблицы на диске: varchar займет меньше места на диске, т.к.
    Но если у тебя в базе длины всех значений в столбце одинаковы, то разницы между char и varchar ты никакой не увидишь.
     
  2. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Всё, разобрался! поставил тип varbinary(32) на поле пароль (так phpMyadmin отображает). Тормозов быть не должно...
     
  3. Scipio

    Scipio Well-Known Member

    Joined:
    2 Nov 2006
    Messages:
    733
    Likes Received:
    544
    Reputations:
    190

    для MD5(Base64) и SHA-1 (Base64) даже придумывать ничего не надо поидее:

    PHP:
     function type_hash($string

    if (
    ereg('^([a-fA-F0-9]{16})$'$string)) return 1// MySQL
    if (ereg('^([a-fA-F0-9]{32})$'$string)) return 2// MD5
    if (ereg('^([a-fA-F0-9]{40})$'$string)) return 3// MySQL5 или SHA-1
    if (ereg('^([a-fA-F0-9]{32})$'base64_decode($string))) return 4;// MD5(Base64)
    if (ereg('^([a-fA-F0-9]{40})$',  base64_decode($string))) return 5//SHA-1 (Base64)
    return 0// неизвестен
    }
     
  4. Theraphy

    Theraphy New Member

    Joined:
    26 Aug 2007
    Messages:
    9
    Likes Received:
    1
    Reputations:
    0
    Здравствуйте,
    можете подсказать решение данного вопроса,мне интересно такое как:

    1) Скрипт вычисления айпи

    2) Скрипт вычисления айпи+город,тоесть в одной игре в инфе у каждого человека АВТОМАТИЧЕСКИ пишется его город по его айпи и т.д,например

    Реальное местонахождение: Russian Federation (Yuzhno-Sakhalinsk
     
  5. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    ну вот скрипт вычесления:
    PHP:
    <?php
     
    echo $_SERVER['REMOTE_ADDR'];
     
    ?>
    а с городом даже не знаю как сделать...можно обращаться к камоу-нить cmyip...
     
    #1285 scrat, 20 Dec 2007
    Last edited: 20 Dec 2007
  6. XopoIII

    XopoIII Elder - Старейшина

    Joined:
    29 Oct 2007
    Messages:
    386
    Likes Received:
    30
    Reputations:
    0
    это вычисляется через GeoIP я выкладывал ссылки для установки, вот еще раз.

    http://www.maxmind.com/download/geoip/database/LiteCity.dat.gz - это сама база(городов)

    http://www.maxmind.com/app/installation?city=1 - это как устанавливать

    http://www.maxmind.com/app/city#api - вот тут ихнее API чтобы работать с базой

    http://www.maxmind.com/download/geoip/api/php/ - тут руководство и скрипты для работы с базой на ПХП
     
    2 people like this.
  7. orcismylife

    orcismylife Elder - Старейшина

    Joined:
    1 Oct 2007
    Messages:
    22
    Likes Received:
    6
    Reputations:
    0
    Можно ли при отсылке множества форм автоматически заполнять этот раздел?

    Code:
    <form name=abc action="" method="post" enctype="multipart/form-data" name="upload">
    Файл:
    <input type="file" />
    <input type="submit" name="Submit" value="Загрузить файл" />
    </form>
    
    Вроде на value='.$file.', ни подобные вещи не помогают...

    Как автоматически вставлять значение в это поле?
     
  8. Dimi4

    Dimi4 Чайный пакетик

    Joined:
    19 Mar 2007
    Messages:
    750
    Likes Received:
    1,046
    Reputations:
    291
    PHP:
    <input type=hidden name="abc" value="bla-bla">
     
  9. orcismylife

    orcismylife Elder - Старейшина

    Joined:
    1 Oct 2007
    Messages:
    22
    Likes Received:
    6
    Reputations:
    0
    Нет, с value почему-то не работает, я же написал. Пробовал и с type=text, и с другими тайпами, не помогает. Попробуйте сначала у себя на локалхосте оттестить, а потом пишите ;)
     
  10. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    ты хочешь, чтобы несколько файло сразуже зааплодить?
     
  11. orcismylife

    orcismylife Elder - Старейшина

    Joined:
    1 Oct 2007
    Messages:
    22
    Likes Received:
    6
    Reputations:
    0
    "ты хочешь, чтобы несколько файло сразуже зааплодить?"

    так точно
     
  12. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    Помойму надо несколько инпутов только разные имена...
     
  13. orcismylife

    orcismylife Elder - Старейшина

    Joined:
    1 Oct 2007
    Messages:
    22
    Likes Received:
    6
    Reputations:
    0
    "Помойму надо несколько инпутов только разные имена..."

    Да хоть что. Главное - заполнить значением поле загрузки файла. А заполнять автоматически я его не могу :/
     
  14. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    Так и не понял тебя... То ты хочешь сразу несколько файлов, то "заполнить значением поле загрузки файла"... =\ Когда нажимаешь "обзор" он же сам заполняет поле Oo
     
  15. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Этого сделать нельзя. И не нужно.
     
  16. orcismylife

    orcismylife Elder - Старейшина

    Joined:
    1 Oct 2007
    Messages:
    22
    Likes Received:
    6
    Reputations:
    0
    Я отправляю несколько форм сразу. Для того, чтобы отправить файл, мне нужно АВТОМАТИЧЕСКИ заполнить эту форму (а не нажатием на кнопку обзор). Как это сделать, я и спрашиваю.
     
  17. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    Никак
     
  18. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Как в MySQL5+PHP получить хэш в старом виде, т.е. простой MySQL ?
    ЗЫ в MSQL <5 функция PASSWORD() вычисляет 64 битный хэш MySQL
    В MySQL5 уже 160 битный... обратная совместимость должна ведь быть? Может параметр какой у функции Password() появился?
     
  19. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    OLD_PASSWORD(...)?

    З.Ы. http://ftp2.uk.vim.org/sites/ftp.mysql.com/doc/refman/5.1/en/encryption-functions.html
    З.Ы.Ы. http://ftp2.uk.vim.org/sites/ftp.mysql.com/doc/refman/5.1/en/password-hashing.html
     
    #1299 groundhog, 21 Dec 2007
    Last edited: 21 Dec 2007
    1 person likes this.
  20. Demetra

    Demetra Elder - Старейшина

    Joined:
    27 Aug 2007
    Messages:
    48
    Likes Received:
    8
    Reputations:
    0
    функция gethostbyname показывает ип не у всех сайтов,так и должно быть?
     
Thread Status:
Not open for further replies.