Данные типа TEXT хранятся вне таблицы. В таблице хранится только ссылка на эти дынные. VARCHAR же хранится в самой таблице. Следовательно, доступ к полю с VARCHAR будет производится быстрее. Тем более на поле с типом VARCHAR можно поставить индекс, с TEXT - нельзя.
Использование глобальных переменных - плохой тон. Если программируете с ООП, то сохраняйте значение в свойстве объекта. Если уж программируете процедурно, то возвращайте то, что вам нужно.
Первый вариант с global:
Какой вопрос, такой и ответ. http://www[dot]free-lance[dot]ru/login.php
Заполняете поля "Логин" и "Пароль", устанавливаете при желании "Запомнить на компьютере" и жмете "Войти". И вы удачно авторизуетесь в 2-х случаях: 1. вы зарегистрированы, 2. вы угадали чей-то пароль.
DeepVarvar, я хочу разобраться, почему так. Ведь, по сути, 2-я строка никак не должна влиять на цикл. Сейчас разбираюсь со ссылками. foreach, оказывается, особенно работаем с ними.
Mr.KreDo, что вы советуете людям?
1. Зачем в запросе выбирать все колонки, если нужен только balans.
2. Зачем делать ORDER BY, если поле login уникальное?
3. Подставляя переменные в запрос, их нужно экранировать. mysql_real_escape_string
4. mysql_fetch_array возвращает 2 массива (обычный и ассоциативный). Правильнее использовать mysql_fetch_asoc
Есть еще несколько незначительных ошибок. Если хотите, укажу. Итого: очень высокая концентрация ошибок, учитываю всего 3 строки кода.
У вас 2 переменные с одинаковыми именами ($df). Переименуйте одну из них. Так как "вторая" $df = "1", то и "первая" тоже будет "1". Это ведь одна и та же переменная. И совет: выбирайте корректные имена переменных. Название переменных/методов/классов должно отражать свое назначение.