Вы не зашли.
Главная » PHP » PHP+MySQL
#131. Admin Off (-1)
Administrator
2008.02.29 19:07
Да, конечно, ВЕЗДЕ и ПОВСЮДУ используй UTF-8. Главное условие - ВЕЗДЕ, а не как в одном мерзком скрипте, называемом еще  "бодр-чатом", и тогда проблем не будет. В БД данные тоже должны храниться в UTF-8.
Часто проблема возникает с тем, что сервера настроены на ISO 8859 или windows-1251, а нам нужен UTF-8.
Решается это следующим образом: сразу после соединения с базой отправляем MySQL серверу информацию, что мы будем работать с UTF-8.
Код:
span style="color: #0000BB"><?php// Хост, пользователь, парольmysql_connect('localhost', 'root', '') or die('Can not connect to MySQL');// UTF-8mysql_query('SET NAMES `utf8`');// БДmysql_select_db('blog') or die('Error select the database');?>
лично я этот код как правило выделяю в отдельный файл - connect.php и где надо подключаю через require
Еще, твой код
Код:
span style="color: #0000BB"><?php$query=mysql_query("SELECT * FROM `users` WHERE `nick`='$nick' AND `pass`='$pass'");if(mysql_num_rows($query)<1) {mysql_close($connect);exit($prolog.'Вы не зарегистрированны!'.$end);}else {mysql_close($connect);session_start();$_SESSION['login']=$nick;?>
вот это
if(mysql_num_rows($query)<1) {mysql_close($connect);
exit($prolog.'Вы не зарегистрированны!'.$end);}

в принципе фигня. но лучше писать более грамотно и красиво, а именно
if(!mysql_num_rows($query) {
mysql_close($connect);
exit($prolog.'Вы не зарегистрированны!'.$end);
}

дальше...
else {
mysql_close($connect);
session_start();
$_SESSION['login']=$nick;

хм... mysql_close($connect); - спорная вещь. соединение (если оно не постоянное (pconnect)) само закроется через 60 сек (по умолчанию). Но дело в том, что пользователь у тебя здесь таки прошел авторизацию, и далее он теоретически пойдет дальше бродить по форуму, т.е. будет коннектится к MySQL, так вот... не стоит лишний раз передергивать такие соединения. Если подразумевается что пользователь в дальнейшем будет использовать скрипт, то соединение закрывать не стоит, это открытое соединение используется при следующем действии пользователя. Оптимизация епт =) Я на ней помешан =)
сердце пронзенное ветром
#132. Helqg Off (2)
Участник
2008.02.29 23:11
Гм. Ага. Не подумал об этом. В следующем же скриптеsmile. Купить бы где учебник по мускулу. Один оракул продают. Че нить знаешь о нем?
Отредактировано Helqg (2008.02.29 23:11)
Стране нужны автобусы!
#133. Gemorroj Off (107)
Administrator
2008.02.29 23:11
Об Оракуле? не smile основы MySQL я лично брал из книжки Кузнецова & Симдянова PHP 5, потом какия-то инфа из сети. Часто пользуюсь этим http://wapinet.ru/textbook/mysql/ построение SQL запросов как правило не вызывает особых проблем. Главное изначально грамотно спроектировать Базу Данных.
#134. Helqg Off (2)
Участник
2008.03.01 10:10
Тякс. Как вывести из базы постранично? Можно ли как переносить указатель у mysql_fetch array?
А то mysql_result и 2 цикла, это повеситься можно.
Стране нужны автобусы!
#135. Gemorroj Off (107)
Administrator
2008.03.01 10:10
Оператор LIMIT wink
Код:
SELECT * FROM `table` WHERE `xz`=1 LIMIT 0,10
#136. Helqg Off (2)
Участник
2008.03.02 21:09
Как пользоваться COUNT()?
$запрос=мускул_запрос("SELECT COUNT(*) FROM таблица");
Что вернет $запрос? Точнее какой тип данных, может просто число?smile
Стране нужны автобусы!
#137. Серый
Гость
2008.03.03 09:09
Gemorroj, привет, подскажи плиз как сделать отсчёт времени от какого - нить события, где-то видел, а как не помнюsad
#138. Admin Off (-1)
Administrator
2008.03.03 10:10
Helqg, вот что по этому поводу сказано на ru2.php.net
Только для запросов SELECT, SHOW, EXPLAIN, DESCRIBE, mysql_query() возвращает указатель на результат запроса, или FALSE если запрос не был выполнен. В остальных случаях, mysql_query() возвращает TRUE в случае успешного запроса и FALSE в случае ошибки. Значение не равное FALSE говорит о том, что запрос был выполнен успешно. Он не говорит о количестве затронутых или возвращённых рядов. Вполне возможна ситуация, когда успешный запрос не затронет ни одного ряда.
для подсчета пользуйся следующей конструкцией
Код:
span style="color: #0000BB"><?php$count = mysql_result(mysql_query('SELECT COUNT(*) FROM `tables` WHERE `xz` = "xz2"'),0);?>
в переменной $count будет требуемый результат.
сердце пронзенное ветром
#139. Admin Off (-1)
Administrator
2008.03.03 10:10
Серый, не совсем понятен вопрос...
Код:
span style="color: #0000BB"><?php// текущая дата$date = date('r',time());// текущая дата - 1 день$date = date('r',time()-86400);?>
сердце пронзенное ветром
#140. Helqg Off (2)
Участник
2008.03.03 11:11
Ясно. Жалко конечно. Ну не число, так не число.
Стране нужны автобусы!
Страниц: 112 13 14 15 16119 Все
Главная
WEB
PunBB Mod v0.6.2
0.034 s