MySQL - [решено] not null не срабатывает

Ответить
 • Просмотры: 1
Аватара пользователя
Delirium

Re: MySQL - [решено] not null не срабатывает

Сообщение Delirium »

Блин... ну не кодил я на php. Я напишу примерно, а вы попробуйте переложить на php.





Код:

Код: Выделить всё

Dim FillFields as integer
FillFields  = 0
If !isset($_POST['m_d']) then
    echo "пожалуйста заполните поле m_d";
    FillFields  =1
end if
If !isset($_POST['m_c']) then
    echo "пожалуйста заполните поле m_C";
    FillFields  =1
end if
....
If FillFields=1 then
   echo "пожалуйста заполните все необходимые поля";
else
   ....здесь код, который отправляется на сервер для занесения данных, т.е. что то типа Insert into myTable values (m_c, m_d)
end if
Аватара пользователя
dima1981

Re: MySQL - [решено] not null не срабатывает

Сообщение dima1981 »

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

Re: MySQL - [решено] not null не срабатывает

Сообщение dmitryst »

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

Благодарю dmitryst, только java для меня атас совсем даже и не пробЫвал ни разу, мне рнр хватает скоро вопросы во сне видеть начну )
Аватара пользователя
dima1981

Re: MySQL - [решено] not null не срабатывает

Сообщение dima1981 »

dima1981,

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

Re: MySQL - [решено] not null не срабатывает

Сообщение timon4ik »

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



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



Код: Выделить всё

<?

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 или узнать, что с этим кодом не так, походу все )
Аватара пользователя
timon4ik

Re: MySQL - [решено] not null не срабатывает

Сообщение timon4ik »

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



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']."'"); 



Аватара пользователя
dima1981

Re: MySQL - [решено] not null не срабатывает

Сообщение dima1981 »

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



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']."'"); 



Аватара пользователя
Delirium

Re: MySQL - [решено] not null не срабатывает

Сообщение Delirium »

это не подходит )

мне кажется все или из за того, что

$begin = $page*$onpage;

$sql = "SELECT * FROM ".$table."

где бегин постоянно равен нулевому числу т.к. пейдж=0 умноженный на онпейдж=5 равно ноль отсюда он и стартует



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



или раз
Цитата dima1981:



Notice: Undefined index: m_o in
MySQL - [решено] not null не срабатывает




то он скорее всего не может не то получить не то обработать данные
Цитата dima1981:



m_o='".$_POST['m_o']."'
MySQL - [решено] not null не срабатывает




тогда получается, что с передачей данных, что то не так потому, что на первой странице данные нормально показываются и количество данных подсчитывается точно, только понять, что тут такое не могу и все тут, подскажите
Аватара пользователя
dima1981

Re: MySQL - [решено] not null не срабатывает

Сообщение dima1981 »

Цитата Delirium:



PHP может тупо не понять, какие поля надо выводить.
MySQL - [решено] not null не срабатывает




не знаю, как там у вас на РНР, а на perl-е у меня тысячи таких запросов, и ничего...



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

Re: MySQL - [решено] not null не срабатывает

Сообщение dmitryst »

dmitryst, я не спорю, что это не будет работать.

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



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

Вернуться в «Программирование и базы данных»