
|
EOMY.NET Хостинг EOMY.NET: Форум поддержки
|
|
В БД записывается 0
|
| Автор |
Сообщение |
uforum $a ||= 5;


Зарегистрирован: 22.01.2008 Сообщения: 715 Откуда: Литва 4862 
|
Добавлено: Вс, 16 Ноя, 2008 07:35 Заголовок сообщения: В БД записывается 0 |
|
|
При перезагрузки страници в БД всё время добовляется НИЧЕГО
Хотя должно не добовляться а добовляться если только данные переданы.
Почему добовляеться?
| Код: | $addcommentstextnn = $_GET['commetform'];
$addcommentstextn = strip_tags($addcommentstextnn);
$addcommentstext = htmlspecialchars($addcommentstextn);
$addcommentsnamenn = $_GET['commentname'];
$addcommentsnamen = strip_tags($addcommentsnamenn);
$addcommentsname = htmlspecialchars($addcommentsnamen);
$addcommentsidnn = $_GET['addcommetid'];
$addcommentsidn = strip_tags($addcommentsidnn);
$addcommentsid = htmlspecialchars($addcommentsidn);
if ((!isset($addcommentsname)) && (!isset($addcommentstext)) && (!isset($addcommentstext)))
{
}
else
{
mysql_query("INSERT INTO `".$pref."comment` (`article`, `name`, `date`, `content`, `id`) VALUES ('$addcommentsid', '$addcommentsname', '$dateful', '$addcommentstext', NULL)", $linkmain);
} |
_________________
http://uforum.org.ua/
Всё про ОС в широком формате
http://bmw3.org.ua/
Всё про BMW 3 и 1 серии |
|
| Вернуться к началу |
|
 |
lazutov $a ||= 5;


Зарегистрирован: 30.04.2007 Сообщения: 2259
38243 
|
|
| Вернуться к началу |
|
 |
uforum $a ||= 5;


Зарегистрирован: 22.01.2008 Сообщения: 715 Откуда: Литва 4862 
|
Добавлено: Вс, 16 Ноя, 2008 09:08 Заголовок сообщения: |
|
|
lazutov
Вы не так поняли ели данные ввести то всё записывается нормально но если их нет записываться недолжно.
Не должно исполняться.
| Код: | | mysql_query("INSERT INTO `".$pref."comment` (`article`, `name`, `date`, `content`, `id`) VALUES ('$addcommentsid', '$addcommentsname', '$dateful', '$addcommentstext', NULL)", $linkmain); |
Но всё равно испоняеться _________________
http://uforum.org.ua/
Всё про ОС в широком формате
http://bmw3.org.ua/
Всё про BMW 3 и 1 серии |
|
| Вернуться к началу |
|
 |
Александр Михалицын Три пингвина

Зарегистрирован: 22.08.2008 Сообщения: 376
14326 
|
|
| Вернуться к началу |
|
 |
Александр Михалицын Три пингвина

Зарегистрирован: 22.08.2008 Сообщения: 376
14326 
|
Добавлено: Вс, 16 Ноя, 2008 09:23 Заголовок сообщения: |
|
|
| Код: | $addcommentstextnn = $_GET['commetform'];
$addcommentstextn = strip_tags($addcommentstextnn);
$addcommentstext = htmlspecialchars($addcommentstextn);
$addcommentsnamenn = $_GET['commentname'];
$addcommentsnamen = strip_tags($addcommentsnamenn);
$addcommentsname = htmlspecialchars($addcommentsnamen);
$addcommentsidnn = $_GET['addcommetid'];
$addcommentsidn = strip_tags($addcommentsidnn);
$addcommentsid = htmlspecialchars($addcommentsidn);
if (isset($addcommentsname) && isset($addcommentstext) && isset($addcommentstext))
{
mysql_query("INSERT INTO `".$pref."comment` (`article`, `name`, `date`, `content`, `id`) VALUES ('$addcommentsid', '$addcommentsname', '$dateful', '$addcommentstext', NULL)", $linkmain);
} |
_________________ Google Apps и EditDNS рулят.
Теперь мое мыло 
Мой сайт с моими разработками
Мой форум
Мой аккаунт на forum.dklab.ru |
|
| Вернуться к началу |
|
 |
Веденин $a ||= 5;


Зарегистрирован: 17.05.2007 Сообщения: 1068 Откуда: Самара 4489 
|
Добавлено: Вс, 16 Ноя, 2008 11:00 Заголовок сообщения: |
|
|
Я бы переписал код так
| Код: | $addcommentstextnn = $_GET['commetform'];
$addcommentsnamenn = $_GET['commentname'];
$addcommentsidnn = $_GET['addcommetid'];
if ((strlen($addcommentstextnn)>0) && (strlen($addcommentsnamenn)>0) && (strlen($addcommentsidnn)>0))
{
$addcommentstextn = strip_tags($addcommentstextnn);
$addcommentstext = htmlspecialchars($addcommentstextn);
$addcommentsnamen = strip_tags($addcommentsnamenn);
$addcommentsname = htmlspecialchars($addcommentsnamen);
$addcommentsidn = strip_tags($addcommentsidnn);
$addcommentsid = htmlspecialchars($addcommentsidn);
mysql_query("INSERT INTO `".$pref."comment` (`article`, `name`, `date`, `content`, `id`) VALUES ('$addcommentsid', '$addcommentsname', '$dateful', '$addcommentstext', NULL)", $linkmain);
} |
P.S. Насколько я помню isset определяет существует ли данная переменная, вы же переменные определяете, присваиваете им пустые значения, т.е. переменные существуют и содержат пустую строку и isset вернет true, ИМХО. _________________ Тематические поисковые системы Рунета: Танцевальная, программиста, поиск книг, спортивная, энциклопедическая, поиск музыки и видео и много других |
|
| Вернуться к началу |
|
 |
Александр Михалицын Три пингвина

Зарегистрирован: 22.08.2008 Сообщения: 376
14326 
|
|
| Вернуться к началу |
|
 |
uforum $a ||= 5;


Зарегистрирован: 22.01.2008 Сообщения: 715 Откуда: Литва 4862 
|
|
| Вернуться к началу |
|
 |
Gosudar Хостинг — это наше всё!

Зарегистрирован: 08.04.2007 Сообщения: 169
2400 
|
Добавлено: Вс, 16 Ноя, 2008 16:07 Заголовок сообщения: |
|
|
| Код: | | strlen($addcommentstextnn)>0 |
а может лучше
| Код: | | empty ($addcommentstextnn) |
и т.д. ... |
|
| Вернуться к началу |
|
 |
Веденин $a ||= 5;


Зарегистрирован: 17.05.2007 Сообщения: 1068 Откуда: Самара 4489 
|
Добавлено: Пн, 17 Ноя, 2008 04:21 Заголовок сообщения: |
|
|
может и лучше, хотя на самом деле, если переменые не определенны !empty(...) и strlen(...)>0 будут работать одинаково, по-моему разница будет только при работе с пустой строкой содержащей проблелы, в этом случае !empty(...) эквивалентно strlen(trim(...))>0
P.S. Если есть желание испоьзовать isset его надо использовать с GET[...], т.е. так:
| Код: | | if (isset($_GET['commetform']) && isset($_GET['commentname']) && isset($_GET['addcommetid'])) |
хотя в этом случае если по каким то причинам строка будет с пустыми параметрами, например так ?commetform=&commentname=&addcommetid , то все равно придется делать проверку strlen(...)>0 _________________ Тематические поисковые системы Рунета: Танцевальная, программиста, поиск книг, спортивная, энциклопедическая, поиск музыки и видео и много других |
|
| Вернуться к началу |
|
 |
Gosudar Хостинг — это наше всё!

Зарегистрирован: 08.04.2007 Сообщения: 169
2400 
|
Добавлено: Пн, 17 Ноя, 2008 07:09 Заголовок сообщения: |
|
|
| я имел в виду, что empty выполняется быстрее, не намного, но быстрее. |
|
| Вернуться к началу |
|
 |
Веденин $a ||= 5;


Зарегистрирован: 17.05.2007 Сообщения: 1068 Откуда: Самара 4489 
|
Добавлено: Вт, 18 Ноя, 2008 04:36 Заголовок сообщения: |
|
|
| Gosudar писал(а): | | я имел в виду, что empty выполняется быстрее, не намного, но быстрее. |
По моему это экономия на спичках, сколько заменой всех strlen на empty в коде можно выиграть, 0.001 секунду?
По сравнению с простейшим запросом к БД или внешним соединением это не существенно. _________________ Тематические поисковые системы Рунета: Танцевальная, программиста, поиск книг, спортивная, энциклопедическая, поиск музыки и видео и много других |
|
| Вернуться к началу |
|
 |
Gosudar Хостинг — это наше всё!

Зарегистрирован: 08.04.2007 Сообщения: 169
2400 
|
Добавлено: Вт, 18 Ноя, 2008 17:18 Заголовок сообщения: |
|
|
Понимаешь, понемногу, по чуть-чуть, и растягивается морока ....
Может лучше сразу писать более аккуратно что-ли . Ну не знаю просто потом оптимизировать намного хуже и сложнее. |
|
| Вернуться к началу |
|
 |
Веденин $a ||= 5;


Зарегистрирован: 17.05.2007 Сообщения: 1068 Откуда: Самара 4489 
|
Добавлено: Вт, 18 Ноя, 2008 17:48 Заголовок сообщения: |
|
|
| Gosudar писал(а): | | Понимаешь, понемногу, по чуть-чуть, и растягивается морока .... |
За 6 лет профессионального программирования я усвоил, что лучше писать как удобнее, чем экономить на мелочах, лучше оптимизировать один sql запрос, чем сотни мелких команд. _________________ Тематические поисковые системы Рунета: Танцевальная, программиста, поиск книг, спортивная, энциклопедическая, поиск музыки и видео и много других |
|
| Вернуться к началу |
|
 |
[LP]LordPro.teus $a ||= 5;


Зарегистрирован: 26.07.2007 Сообщения: 3303
37521 
|
Добавлено: Вт, 18 Ноя, 2008 17:57 Заголовок сообщения: |
|
|
Веденин
лучше оптимизировать все. _________________
  |
|
| Вернуться к началу |
|
 |
|
Powered by phpBB © 2001, 2005 phpBB Group
|