Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - [решено] not null не срабатывает

Ответить
Настройки темы
MySQL - [решено] not null не срабатывает

Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


Вообщем, в таблице какая то часть полей имеет значение not null, какая то null но при внесении данных в базу из скрипта эти значения не учитываются в mysql и хоть все поля в html форме оставляй пустыми и отправляй на занесение в базу, такие данные хорошо заносятся и отображаются в браузере только естественно с пустыми полями, хотя какие то поля not null, что такое не могу понять, подскажите пожалуйста?

-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Отправлено: 20:20, 06-09-2008

 

Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


$error = '';
if ( empty( $login ) ) $error = $error.'<li>не заполнено поле "Имя"</li>'."\n";
else
$query = "INSERT INTO ".TABLE_USERS."

не так? )

-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Отправлено: 13:19, 16-09-2008 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для dmitryst

Ветеран


Сообщения: 7315
Благодарности: 909

Профиль | Отправить PM | Цитировать


dima1981, ссылка на java-script-овый вариант проверки форм (может, понадобится )

-------
Осваиваю FreeBSD


Отправлено: 15:51, 17-09-2008 | #22


Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


http://www.whatis.ru/razn/razn12.shtml Это кстати отлично подходит не представлял, что на столько обычный способ есть, только про качество не скажу не знаю но для 5php самое то )
Благодарю dmitryst, только java для меня атас совсем даже и не пробЫвал ни разу, мне рнр хватает скоро вопросы во сне видеть начну )

-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Отправлено: 17:23, 18-09-2008 | #23


Аватара для timon4ik

Старожил


Сообщения: 272
Благодарности: 37

Профиль | Отправить PM | Цитировать


dima1981,
я когда-то приводил пример JavaScript-валидатора, посмотрите тут , еще несколько полезных приемов в есть в той же теме.

Отправлено: 11:36, 19-09-2008 | #24


Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


Понял, спасиб за переход, только во первых там у меня почти все сделанно на php пробелы отсекаются, не нужные знаки убераются, только вот для емеил формы не могу проверку сделать, но думаю раздобуду код потихоньку ) и во вторых если скрипт не поддерживается у заполняющего форму на машине, то, что тогда, как быть, конечно это побыстрее на jave в смысле, но на php попрактичней походу, хотя не знай не силен по этим да и вообщем остальным направлениям, так копирую коды, которые требуется для сайта, который создаю где придется, тем и рад, вообщем вот так )

Кстати если не затруднит, что с этим кодом взял отсюда http://www.internet-technologies.ru/...ticle_701.html для построчного вывода данных из таблицы, подредактировал под то, что требуется, мне в основном в плане дизайна, получилось так

PHP код: Выделить весь код

<?

ini_set
('display_errors',1);
error_reporting(E_ALL);
function 
page()
{
    if(empty(
$_post["page"])){
        
$page 0;
    } else {
if(!
is_numeric($_post["page"])) die("Неправильный формат номера страницы!");
        
$page $_post["page"];
    }
        return 
$page;



        function 
sql_query($onpage$page$table)
{
    
$begin $page*$onpage// откуда начинать
    
$sql "SELECT * FROM ".$table." where m_o='".$_POST['m_o']."' and m_d='".$_POST['m_d']."' limit ".$begin.", ".$onpage;
        
$result mysql_query($sql) or die(mysql_error());
        return 
$result;



        function 
navigation($onpage$page$table)
{
        
$return null;
    
$count mysql_query("SELECT COUNT(*) FROM rg where m_o='".$_POST['m_o']."' and m_d='".$_POST['m_d']."'");
        
$count mysql_fetch_array($count);
        
$count $count[0];
        
$pages $count/$onpage;
        if(
$page!==0){
            
$prev"<A HREF=?page.=".($page-1)."><</A>";
        } else {
            
$prev "<";
        }
        if(
$page<round($pages-1)){
            
$next "<A HREF=?page=".($page+1).">></A>";
        } else {
            
$next ">";
        }
        for(
$i=0;$i<$pages;$i++)
        {
            if(
$i==$page){
                
$return.="[".($i+1)."]";
            } else {
                
$return.="<A HREF=?page='".$i."'>[".($i+1)."]</A>";
            }
        }
        return 
$prev.$return.$next;
}
$onpage 5
$table "rg"
$db mysql_connect("localhost","root","***");
mysql_select_db("rp"$db);
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
$page page(); // определяем страницу
$result sql_query($onpage$page$table); // sql - запрос
echo ("<center><table bgcolor='#ecddca' BORDERCOLOR='black' border='1' style='border-collapse: collapse'>");
echo (
"<tr bgcolor='white'><td align='center'>поле0</td><td>Поле1</td><td>Поле2</td><td align='center'>Поле3</td></tr>");
while(
$abc mysql_fetch_row($result))
{
echo(
"<tr><td>$abc[1]</td><td align='center'>$abc[2]</td><td align='center'>$abc[3]</td><td>$abc[4]</td></tr>");
echo(
"<tr><td bgcolor='white' colspan='12'><font color='white'>$abc[0]</font></td></tr></td></tr>");
}
echo 
"</table></center>";
$navigation navigation($onpage$page$table); // определим навигацию
echo $navigation// выведем ее
?>

в итоге показывает данные нормально в еолличестве определенном в onepage подсчет страниц в базе по заданным критериям поиска осуществляется хорошо т.е. навигация работает, но когда перехожу на вторую и т.д. страницу, переход есть но таблицу не отображает, мне кажется он данные запроса не получает с первой страницы, пол дня седня проэксперементировал но т.к. не рублю в этом то вот результат/
Хоть узнать вообщем подходит эт код к mysql 6 и php5 или узнать, что с этим кодом не так, походу все )

-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Последний раз редактировалось dima1981, 22-09-2008 в 00:01.


Отправлено: 17:50, 19-09-2008 | #25


Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


Подскажите пожалуйста, выполняю этот код по постраничному выводу данных, отображает нормально первую страницу в четыре поля, навигацию определяет хорошо т.е. подсчет полей в базе по этому запросу совершает праильно, но перехожу на вторую страницу пишет

Notice: Undefined index: m_o in C:\apache\localhost\www\zg.php on line 32

Notice: Undefined index: m_d in C:\apache\localhost\www\zg.php on line 32

Поле0 Поле1 Поле2 Поле3


Notice: Undefined index: m_o in C:\apache\localhost\www\zg.php on line 41

Notice: Undefined index: m_d in C:\apache\localhost\www\zg.php on line 41

т.е. про эти строки
PHP код: Выделить весь код

$sql "SELECT * FROM ".$table." where m_o='".$_POST['m_o']."' and m_d='".$_POST['m_d']."' limit ".$begin.", ".$onpage

и
PHP код: Выделить весь код

$count mysql_query("SELECT COUNT(*) FROM rg where m_o='".$_POST['m_o']."' and m_d='".$_POST['m_d']."'"); 


-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Отправлено: 23:59, 21-09-2008 | #26


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Цитата:
"SELECT * FROM ".$table."
Я вам уже писал, никогда не пишите такие запросы. PHP может тупо не понять, какие поля надо выводить. Пишите список полей, необходимых для вывода на экран, т.е.
Цитата:
SELECT name, family, surname, date_in FROM rg where......
То же самое и с
Цитата:
SELECT COUNT(*) FROM
Напишите select count(1) from ...., или имя поля вместо 1.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 01:36, 22-09-2008 | #27


Аватара для dima1981

Ветеран


Сообщения: 512
Благодарности: 23

Профиль | Отправить PM | Цитировать


это не подходит )
мне кажется все или из за того, что
$begin = $page*$onpage;
$sql = "SELECT * FROM ".$table."
где бегин постоянно равен нулевому числу т.к. пейдж=0 умноженный на онпейдж=5 равно ноль отсюда он и стартует

или $count потому, что фиксирован на нуле вообщем трудно это что то совсем

или раз
Цитата dima1981:
Notice: Undefined index: m_o in »
то он скорее всего не может не то получить не то обработать данные
Цитата dima1981:
m_o='".$_POST['m_o']."' »
тогда получается, что с передачей данных, что то не так потому, что на первой странице данные нормально показываются и количество данных подсчитывается точно, только понять, что тут такое не могу и все тут, подскажите

-------
не уверен, что знаешь наверняка, говори об этом заблаговремено )


Последний раз редактировалось dima1981, 22-09-2008 в 04:13.


Отправлено: 03:23, 22-09-2008 | #28


Аватара для dmitryst

Ветеран


Сообщения: 7315
Благодарности: 909

Профиль | Отправить PM | Цитировать


Цитата Delirium:
PHP может тупо не понять, какие поля надо выводить. »
не знаю, как там у вас на РНР, а на perl-е у меня тысячи таких запросов, и ничего...

$sql = "SELECT * FROM `.$table.` where m_o='".$_POST['m_o']."' and ... и далее по тексту.

-------
Осваиваю FreeBSD


Отправлено: 15:03, 22-09-2008 | #29


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


dmitryst, я не спорю, что это не будет работать.
Просто сейчас вы помните, что за этой * лежит, а через полгода открываешь код, смотришь тупо на select * from table и думаешь, а что ж там за поля то? Гораздо проще написать 1 раз нужные поля через запятую, и радоваться.

К модераторам: тема переросла из MySql (Not Null) в решение проблем по PHP. Считаю, что тему надо переименовать и перенести в программирование, mysql уже не обсуждается.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 01:35, 23-09-2008 | #30



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - [решено] not null не срабатывает

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Драйвер - [решено] Зачем нужен драйвер Null рэмбо Microsoft Windows 2000/XP 10 22-05-2009 21:33
Службы - [решено] Не срабатывает восстановление системы Wan1 Microsoft Windows 2000/XP 12 18-03-2009 08:58
Установка - [решено] Не срабатывает загрузка с установочного CD Dieza Microsoft Windows 2000/XP 12 06-01-2009 12:06
Разное - [решено] Не срабатывает клавиша 'и' на клавиатуре Creat0R Microsoft Windows 2000/XP 9 01-02-2008 09:56
null сесия в ХР Pegas Сетевые технологии 1 03-09-2004 02:35




 
Переход