HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 21.05.2009, 18:20
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
Smile

Мужики, Всем привет!

Возникла такая проблема...


Есть вот такой код:

PHP код:
$user $_COOKIE['user'];
$key_id  $_POST['key_id'];
        
$result mysql_query("UPDATE base SET poster_id='$user', key_id='$key_id', post_date=NOW(), done='wait' WHERE page='$page' LIMIT 1",$db); 
Проблема в том, что:
Код срабатывает всегда, но лишь частично, не смотря на то, что в $key_id всегда есть трёхзначное число и оно точно передаётся (не теряется) в результате пост запроса.

Что значит частично:
Т.е. иногда запись обновляется так как будто $key_id пуст.

Примечание:
Поле key_id в таблице base типа INT(5)


Подскажите пожалуйста, в чём может быть проблема?
 
Ответить с цитированием

  #2  
Старый 21.05.2009, 19:40
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
С нами: 10892546

Репутация: 2274


По умолчанию

Эмм... Это реальный кусок кода? У тебяж тама SQL Inj =\
Юзай
$key_id = intval($_POST['key_id']);
И если $_POST['key_id'] будет буквами, то запишется 0 а не просто пустая строка
 
Ответить с цитированием

  #3  
Старый 21.05.2009, 19:58
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
По умолчанию

Пончик, большое тебе спасибо. Попробую сменить и посмотрим что будет.


Так же спасибо за заботу, но это приватный скрипт, так что бояться нечего

P.s. Ещё какие-нибудь предположения по поводу вышеизложенной проблемы будут?


Заранее благодарен!

Последний раз редактировалось OnArs; 21.05.2009 в 20:03..
 
Ответить с цитированием

  #4  
Старый 21.05.2009, 23:53
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
По умолчанию

Появился ещё один вопрос, помогите с ним пожалуйста!



Есть вот такой кусок кода:
PHP код:
$result mysql_query("SELECT count(*) FROM base WHERE pr='7'",$db);
$se mysql_fetch_array($result);
$pr7 $se[0];
            
$result mysql_query("SELECT count(*) FROM base WHERE pr='6'",$db);
$se mysql_fetch_array($result);
$pr6 $se[0];
            
$result mysql_query("SELECT count(*) FROM base WHERE pr='5'",$db);
$se mysql_fetch_array($result);
$pr5 $se[0];
    
$result mysql_query("SELECT count(*) FROM base WHERE pr='4'",$db);
$se mysql_fetch_array($result);
$pr4 $se[0];
            
$result mysql_query("SELECT count(*) FROM base WHERE pr='3'",$db);
$se mysql_fetch_array($result);
$pr3 $se[0];
            
$result mysql_query("SELECT count(*) FROM base WHERE pr='2'",$db);
$se mysql_fetch_array($result);
$pr2 $se[0]; 
Т.е. в 6 переменных Я получаю кол-во страниц с заданными параметрами. По-моему так не должно быть, как оптимизировать эту группу запросов?


Большое спасибо!
 
Ответить с цитированием

  #5  
Старый 22.05.2009, 14:36
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
С нами: 10021597

Репутация: 905


По умолчанию

Так не годиццо?
PHP код:
$result mysql_query ("SELECT * FROM base WHERE pr = '2'"$db); 
$pr2 mysql_num_rows ($result); 
---
Added:
Либо же одним SQL-запросом
Код:
SELECT pr, COUNT(*) FROM base WHERE pr IN (7, 6, 5, 4, 3, 2) GROUP BY pr;

Последний раз редактировалось krypt3r; 22.05.2009 в 14:48..
 
Ответить с цитированием

  #6  
Старый 24.05.2009, 23:35
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
С нами: 9567480

Репутация: 61
По умолчанию

Не могу перенести БД MySQL форума Version 3.8.1
Проблема в том что форум создавался в Литвии и сама Бд создана в кодировке UTF-8 юникод
Сравнение таблиц latin1_swedish_ci
Если сделать дамп любой прогой или PhpMyAdmin`ом то будет такая бяка
Цитата:
ñåâðåð çàïóùåí â òåñòîâîì ðåæèìå
Даже если просто в PhpMyAdmin смотеть на это...
Как сменить кодировку чтоб норм по русски было?

Хотя нормально сейчас форум стоит, а вот переносится не хочет
 
Ответить с цитированием

  #7  
Старый 25.05.2009, 01:50
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

http://www.artlebedev.ru/tools/decoder/

CP1252 → CP1251

выстави в браузере правильную кодировку и не парь мозг

ЗЫЖ Нормальный дамп, бывают и хуже

ЗЗЫЫЖЖ Ушол писать прогу для автоконвертации дампов в нужную кодировку, заманали
 
Ответить с цитированием

  #8  
Старый 25.05.2009, 17:52
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
С нами: 9567480

Репутация: 61
По умолчанию

Цитата:
Сообщение от Pashkela  
http://www.artlebedev.ru/tools/decoder/

CP1252 → CP1251

выстави в браузере правильную кодировку и не парь мозг

ЗЫЖ Нормальный дамп, бывают и хуже

ЗЗЫЫЖЖ Ушол писать прогу для автоконвертации дампов в нужную кодировку, заманали
Ладно я могу перевести в другую кодировку но я не могу перевести целый дамп базы....
как быть?
 
Ответить с цитированием

  #9  
Старый 04.06.2009, 19:03
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

Репутация: 389
По умолчанию

PHP код:
//Уствнока кодировки клиента
mysql_query('SET character_set_client=cp1251');
//Уствнока кодировки запросов
mysql_query('SET character_set_results=cp1251'); 
//Уствнока кодировки соединения
mysql_query('SET character_set_connection=cp1251'); 
//Уствнока кодировки сервера
mysql_query('SET character_set_server=cp1251'); 
Заменяешь cp1251 на нужную кодировку и радуешся жизни, только не попутай направление кодировок
 
Ответить с цитированием

  #10  
Старый 05.06.2009, 02:08
SaiRus
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
С нами: 9191105

Репутация: 100
По умолчанию

подскажите, правильно ли на каждой странице прописывать/инклудить коннект к базе?сайт хоум на ней всего 3 страницы
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сетевой этикет (Перед тем, как задать вопрос хакеру) satana-fu Статьи 7 21.10.2009 07:40
Ответы на часто задаваемые вопросы + линки на статьи по SQL/XSS/PHP-инклуд Jokester Уязвимости 2 28.06.2009 00:19
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору. Комиссия форума: 2%.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...
×

ESCROW ADMIN PANEL

Загрузка...
Загрузка...