?

Log in

No account? Create an account
figure skating

ImageCreateFromPng

Сгенерировала random'ом картинку с цифрами для кода безопасности своей гестбуки. Всё так замечательно работает... НО значение рандомовской переменной из пхп-файла с кодом счетчика в основной исходник гестбуки передаваться никак не хочет ни под каким предлогом. Оглобаливала! Не помогает... Почему нам в Универе все самое интересное не преподавали? Самообучением заниматься надоело... решила походить на небольшие курсы по пхп)) А то все самой... даже скучно)) Основной интерес для меня, все же — MySQL...

Comments

MySQL...-круто!!!
угу))
Я одно время на Postgre перешла - тоже есть свои прелести... Но сейчас опять работаю с мусклем, вернулась :)

А на одном хостинге проблемы возникли - дикие лаги во время работы с phpMyAdmin, пришлось в высоком темпе для двух сайтов админ-панели писать, чтоб с базой без myadminработать... Сразу прочувствовалось, насколько легко и удобно, когда мускль под рукой :)
у меня на fantasyflash mySQL запрещен (сама же отказалась выкладывать дополнительную штуку за хостинг:) ), наверное, буду менять свое решение)) Я с ним только дома баловалась, да и то... немного... А ты у нас гений веба *завидую белой завистью;)*
Хм... А у меня поддержка мускля включена по любому, даже не было такой возможности при регистрации - отказаться от нее :)
Еще не слышала о курсах, где бы по gd library толковую инфу давали, но может это у нас курсы такие недоделанные :)

Сейчас подумаю попробую... А в сессию его передать получается? в общем, сейчас гляну :))))
да тут тоже по этой теме мало что ожидается) просто я в пхп такая самоучка, что не помешало бы расширить свои знания... Что-то переделать — это еще пожалуйста, но от начала до конца сотворить что-то поистине серьезное — это для меня пока проблема. Надеюсь, временная;)
И куды это Ты на курсы идти надумала?! В РЦПК?

Оль, неужели Ты действительно думаешь, что Тебе там скажут об этом?!

Думаю, что там средний уровень обучающихся будет достаточно низок - и в основном будут даваться только лишь основы... Это как у меня на втором высшем. :)

А MySQL - это действительно круто! :)))
ну... об этом можно и спросить на крайний случай)) Я бы так не сказала... Я попала в группу, которые знают asp, парсер, iis и кучу всего остального, с чем я еще не работала. C твоей второй высшкой действительно прикол получился: тебя вполне можно устроить там преподом парочки курсов ;)
Ну тогда все просто супер! ;)
Если там средний уровень учащихся высок - то это классно! :)
Уф, сорри, что долго - я еще малого искупала :)

Я была права - прямо в файле-картинке после создания рендомной переменной передавай ее в сессию :) Только проследи, что бы после header("Content-type: image/gif"); (или png, все равно) была запущена сессия session_start(). В файле-обработчике сообщений гостевой - тоже. Там проверяем совпадение переданного в массиве _POST числа тому, что хранится в сессии - будучи заданным в файле-картинке, оно по-прежнему доступно для этого пользователя на любой странице вплоть до уничтожения сессии :)

Напиши, что получится, буду ждать!
ой, спасибки огромные! буду грызть сессии... Завтра займусь основательно, а то уже засыпаю... у нас без пяти минут три ночи :) *ты мой спаситель:)*
А у нас без 3 полночь и я иду играцца в linage :) Мужа ждет :)

Жду результатов :) У меня все заработало, так что должно и у тебя!

Спокушки...
обязательно расскажу, что получилось, спасибо! *спок ночи*
Вести с полей - обыкновенную php-шную картинку со стандартно написанным четырехзначным шрифтом за ночь взломали несколько раз и таки наспамили :)

Выводы: используем нестандартный шрифт, надпись под углом и тень от надписи - пока, кажется, с этим никто не справился :) Если понадобится, опишу ф-ции, но это уже в аську ;)

Хотя умельцы, может, и с этим справятся...
Ура!! заработало!!! спасибочки:) Шрифт, в принципе можно будет и поменять... Пока так попробую;) Начнут спамить — загружу новую версию гестбуки на сервер. Пока я там одну проверку добавила на проверку существования одной переменной (если ее нет, то добавляться ничего не будет)) ) Пока работает... Хотя решение такое глупое и простое)) Может, просто спамщики пока не заглядывали))

PS а все эти сессии, их можно как-то почистить? они, вроде как, сохраняются в папке tmp.. Не оч хорошо хранить их там огромной растущей стопкой...
Хм... Сессия юзверя хранится на сервере и уничтожается при его выходе... Разве нет? Почетайу :)

Я ж сама самоучка в принципе... Читаю по мере необходимости...
ясненько :)
Начиталась: http://ua2.php.net/manual/ru/ref.session.php . Жаль, там не переведено.

Значит, что выходит. При визите пользователя сессия на него заводится в любом случае.

By default, all data related to a particular session will be stored in a file in the directory specified by the session.save_path INI option. A file for each session (regardless of if any data is associated with that session) will be created. This is due to the fact that a session is opened (a file is created) but no data is even written to that file. Note that this behavior is a side-effect of the limitations of working with the file system and it is possible that a custom session handler (such as one which uses a database) does not keep track of sessions which store no data.


Получается, что сессии-таки хранятся в /tmp, он установлен по умолчанию. Заменить пути сохранения файлов сессий можно директивой session.save_path в php.ini или ф-цией session_save_path(). Ну, и, подозреваю, что через .htaccess, так как прямой доступ к php.ini дается далеко не везде :)))

По умолчанию, время хранения сессии 1440 секунд. Изменить его можно через session.gc_maxlifetime все в том же php.ini.

session.gc_maxlifetime specifies the number of seconds after which data will be seen as 'garbage' and cleaned up. Garbage collection occurs during session start.


А еще там указывается, что с точки зрения безопасности хорошо бы переопределить директорию хранения сессий функций session_save_path('новое_место_хранения'); так как /tmp вроде бы общедоступен и при желании можно отследить создающиеся на сервере сессии путем просмотра этой папки :)

If you leave this set to a world-readable directory, such as /tmp (the default), other users on the server may be able to hijack sessions by getting the list of files in that directory.


Вот только не совсем понятно, если у тебя будет изменено место хранения, будет ли для новой папки отрабатывать "сборщик мусора" :)

Вот такая вот... загогулина :)

Учитывая, что моя собственная папка, указанная для хранения сессий, не переполняется ненужным барахлом, а сессии при создании, например, линеек, получаются довольно насыщенные, то делаем вывод, что чистится все на ура, и проблем вызывать не будет :)
ага, про 1440 секунд я читала:) хотела привязать session_handler_destroy()... не работает) Но если все чистится автоматом, тогда все ok:) спасибо!
А если вместо 1440 поставить 10? :) Кстати, надо проверить, вообще разрешно ли у меня переопределение этого времени :))) Только у меня тогда народ не будет успеать линейку создавать... По статистике на выборе линейки и бегунка некоторые минут по 10 вообще проводят :)
вот странно... попробовала все это загрузить на сервер — не работает. Картинка вообще не хочет генериться... может они мне библиотеку отключили?((

PS при большом выборе пользователю сложно сразу выбрать самое-самое, вот и сидят по пол часа ;)
Есть какая-то функция типа gd_info() или как-то так, должно выдать всю инфу по библиотеке gd, начиная с того, подключена ли она вообще.
с ней полный облом: чистый белый экран...)) А в логах — ругательства, на то, что я сую ImageCreateFromPng адрес пикчи... (наши любимые настройки php.ini:))Замучила своих хостерв, вроде все заработало. Покрайней мере, картинка какая-то есть))...
Видела у тебя картинку, и видела, что спамят по-прежнему :( Меня тоже.

Придумала еще один наворот, на чем сразу отпал один из ip, с которых шел спам: вместо картинки picture.php пишу picture.gif, а в .htaccess прописываем


RewriteEngine on
RewriteRule picture.gif$ picture.php


Посмотрю еще до вечера, если кто-то еще отметится, буду-таки делать проверку результатом вычисления :)

В общем, результаты показывают, что старый дедовский метод картинок, сделанных просто в фотошопе, работает вернее :)
прикольная придумка ;) да, спамят заразы... у меня сам счетчик еще глючит...

Ой

Круто, девченки-программистки, йес! Давайте знакомиться, знаниями, так сказать, обмениваться.

Re: Ой

давайте)))