26

Re: PHP код для небольшой админки. Ошибка.

Задолбался совсем с этой админкой. Щас хочу прицепить статистику.
Допустим, есть БД в которой есть поле userid (аутоинкремент) и City. Надо вывести на экран табличку, в которой будет список городов и кол-во человек из этих городов.

Хочу, чтоб в итоге была примерно такая таблица:
Город | Кол-во человек | Подробнее (кнопка открывает подробный список)
......................................
......................................
......................................

Допустим, вот код, который, вроде бы, делает то, что мне нужно, ну сортировку потом вставлю:
$query = "SELECT `City`, COUNT(userid) FROM `childrens` GROUP BY `City`";
$result = mysql_query($query);

А как теперь все это представить в виде таблички?

27

Re: PHP код для небольшой админки. Ошибка.

Таблицу можно собрать таким образом.

$query = "SELECT `City`, COUNT(`userid`) AS `count` FROM `childrens` GROUP BY `City`";
if ($result = mysql_query($query)) {
    print '<table><tbody>';
    while ($row = mysql_fetch_assoc($result)) {
        print '<tr><td>' . $row['City'] . '</td><td>' . $row['count'] . '</td></tr>';
    }
    print '</tbody></table>';
}

28 (изменено: Ketsyki, 2011-03-28 18:55:41)

Re: PHP код для небольшой админки. Ошибка.

Спс, но немного не то, что мне нужно.

Я вот, когда писал админку, то для составления таблицы делал такой код:

function list_records()
{
global $default_dbname, $user_tablename;
global $records_per_page;
$PHP_SELF = "userviewer.php";
$link_id = db_connect($default_dbname);
mysql_query('SET NAMES cp1251');
if(!$link_id) error_message(sql_error());
$query = "SELECT count(*) FROM $user_tablename";
$result = mysql_query($query);
if(!$result) error_message(sql_error());
$query_data = mysql_fetch_row($result);
$total_num_user = $query_data[0];
if(!$total_num_user) error_message('Нет зарегистрированных пользователей!');
if(empty($_GET['next_page'])) {
$_GET['next_page'] = 0;
}
$cur_page = $_GET['next_page'];
$page_num = $cur_page + 1;
$record = $cur_page * $records_per_page + 5;
$total_num_page = $last_page_num = ceil($total_num_user/$records_per_page);
html_header();
echo "<CENTER><H3>В базе найдено $total_num_user пользователей. Страница
$page_num из $last_page_num.</H3></CENTER>\n";
if (empty($_GET['order_by'])){
$_GET['order_by'] = 'userid';
} $order_by = $_GET['order_by'];
if (empty($_GET['sort_order'])) {
$_GET['sort_order'] = 'ASC';
$sort_order = 'ASC';
}
if ($_GET['sort_order'] == 'ASC') {
$sort_order = 'DESC';
$org_sort_order = 'ASC';
}
else {
$sort_order = 'ASC';
$org_sort_order = 'DESC';
}





$limit_str = "LIMIT ". $cur_page * $records_per_page . ", $record";
$query = "SELECT  userid, Section, Docname, Surname, Name, Patronymic, Email, Telephone, Sex, Date, Country, Region, City, School, Address, Class, File, Diplom FROM $user_tablename ORDER BY
$_GET[order_by] $_GET[sort_order]
$limit_str ";
$result = mysql_query($query); if(!$result){
error_message(sql_error());
}
?>


<DIV ALIGN="CENTER">
<TABLE BORDER="1" WIDTH="90%" CELLPADDING="2">
<TR>


<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=userid"; ?>">
ID
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Section"; ?>">
Секция
</A>
</TH>
<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Docname"; ?>">
Название доклада
</A>
</TH>
<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Surname"; ?>">
Фамилия
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Name"; ?>">
Имя
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Patronymic"; ?>">
Отчество
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Email"; ?>">
Email
</A>
</TH>



<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Country"; ?>">
Страна
</A>
</TH>



<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=City"; ?>">
Город
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=School"; ?>">
Школа
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=File"; ?>">
Файл
</A>
</TH>

<TH NOWRAP>
<A HREF="<?php echo "$PHP_SELF?action=list_records&
sort_order=$sort_order&
order_by=Diplom"; ?>">
Диплом
</A>
</TH>

<TH NOWRAP>Действие</TH>
</TR>
<?php

while($query_data = mysql_fetch_array($result)) {

$userid = $query_data["userid"];
$Section = $query_data["Section"];
$Docname = $query_data["Docname"];
$Surname = $query_data["Surname"];
$Name = $query_data["Name"];
$Patronymic = $query_data["Patronymic"];
$Email = $query_data["Email"];
$Country = $query_data["Country"];
$City = $query_data["City"];
$School = $query_data["School"];
$File = $query_data["File"];
$Diplom = $query_data["Diplom"];
echo "<TR>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$userid</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Section</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Docname</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Surname</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Name</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Patronymic</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Email</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Country</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$City</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$School</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$File</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$Diplom</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">
<A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&
userid=$userid');\">Просмотреть запись</A>

<a href=\"$PHP_SELF?action=delete_record&userid=$userid\"
onClick=\"return confirm('Вы уверены?');\">
Удалить запись</a>

</TD>\n";
echo "</TR>\n";

}



?>
</TABLE>
</DIV>

Тут и возможность сортировки есть, и кнопочка есть, которая позволяет подробно просмотреть данные о юзере.

Как вот эти города и кол-во человек запихнуть в похожую табличку? У меня никак не получается сортировку добавить.

29

Re: PHP код для небольшой админки. Ошибка.

$query = "SELECT  userid, Section, Docname, Surname, Name, Patronymic, Email, Telephone, Sex, Date, Country, Region, City, School, Address, Class, File, Diplom FROM $user_tablename ORDER BY
$_GET[order_by] $_GET[sort_order]
$limit_str ";
$_GET[order_by] - поле по которому осуществляется сортировка.
$_GET[sort_order] - Направление сортировки (ASC, DESC).

Если что-то не ясно, то покажите что вы делаете с кодом для добавления сортировки.

30

Re: PHP код для небольшой админки. Ошибка.

Так на сортировку я временно забил. Пытаюсь составить таблицу.

<?php 

$hostname = "localhost"; 
$username = "myusername"; 
$password = "mypassword"; 
$adminaddress = "jaumxo@gmail.com"; 
/* создать соединение */ 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_query('SET NAMES cp1251');
/* выбрать базу данных. Если произойдет ошибка - вывести ее */ 
mysql_select_db(baza) or die(mysql_error());  



<DIV ALIGN="CENTER">
<TABLE BORDER="1" WIDTH="90%" CELLPADDING="2">
<TR>
<TH NOWRAP>
Город
</A>
</TH>

<TH NOWRAP>
Кол-во человек
</A>
</TH>

<TH NOWRAP>Действие</TH>
</TR>
<?php


$query = "SELECT `City`, COUNT(`userid`) AS `count` FROM `childrens` GROUP BY `City`";
if ($result = mysql_query($query)) {


echo "<TR>\n";
    while ($row = mysql_fetch_assoc($result)) {
        echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$row['City']</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$row['count']</TD>\n";
    }
    echo "</TR>\n";

}


echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">
<A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&
userid=$userid');\">Просмотреть подробнее</A>

</TD>\n";

}

?>
</TABLE>
</DIV>
mysql_close(); 
?> 

Parse error: syntax error, unexpected '<' in C:\Serv\xampp\htdocs\mysite\admin1\stat.php on line 15

31

Re: PHP код для небольшой админки. Ошибка.

Ketsyki сказал:

Parse error: syntax error, unexpected '<' i

Не закрыт тег PHP кода перед HTML. Не хватает символов ?>

32 (изменено: Ketsyki, 2011-03-29 12:13:15)

Re: PHP код для небольшой админки. Ошибка.

<?php 

$hostname = "localhost"; 
$username = "myusername"; 
$password = "mypassword"; 
$adminaddress = "jaumxo@gmail.com"; 
/* создать соединение */ 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_query('SET NAMES cp1251');
/* выбрать базу данных. Если произойдет ошибка - вывести ее */ 
mysql_select_db(baza) or die(mysql_error());  

?>

<DIV ALIGN="CENTER">
<TABLE BORDER="1" WIDTH="90%" CELLPADDING="2">
<TR>
<TH NOWRAP>
Город
</A>
</TH>

<TH NOWRAP>
Кол-во человек
</A>
</TH>

<TH NOWRAP>Действие</TH>
</TR>
<?php


$query = "SELECT `City`, COUNT(`userid`) AS `count` FROM `childrens` GROUP BY `City`";
if ($result = mysql_query($query)) {


echo "<TR>\n";
    while ($row = mysql_fetch_assoc($result)) {
        echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$row['City']</TD>\n";
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$row['count']</TD>\n";
    }
    echo "</TR>\n";

}


echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">
<A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&
userid=$row['City']');\">Просмотреть подробнее</A>

</TD>\n";

}

?>
</TABLE>
</DIV>
<?php
mysql_close(); 
?>

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Serv\xampp\htdocs\mysite\admin1\stat.php on line 39

Где то в синтаксисе ошибка?

33

Re: PHP код для небольшой админки. Ошибка.

Нельзя таким образом в строку встраивать элемент массива.
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">$row['City']</TD>\n";
Правильный синтаксис имеет два варианта - обрамление фигурными скобками:
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">{$row['City']}</TD>\n";
И конкатенация (объединение строки) через символ точки.
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\">" . $row['City'] . "</TD>\n";

34

Re: PHP код для небольшой админки. Ошибка.

Статистику сделал, решил переделать форму регистрации. Есть проблемка. Вот код для проверки формы.

<script type="text/javascript">

 
     

    $(document).ready(function() {



$.validator.addMethod("Docname",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
    },"Ошибка.");



 $.validator.addMethod("Surname",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
    },"Ошибка.");


$.validator.addMethod("Name1",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
    },"Ошибка.");


 $.validator.addMethod("Patronymic",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
    },"Ошибка.");
    

$.validator.addMethod("Email", function(value, element) {  
    return this.optional(element) || /^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/i.test(value);  
    }, "Ошибка.");

$.validator.addMethod("Telephone", function(value, element) {  
    return this.optional(element) || /^[0-9+]{2,}$/i.test(value);  
    }, "Ошибка.");


$.validator.addMethod( 
       "selectNone1",
      function(value, element) { 
        if (element.value == "") 
        { 
          return false; 
        } 
        else return true; 
      }, 
      "Ошибка." 
    ); 

$.validator.addMethod("Date", function(value, element) {  
    return this.optional(element) || /^[0-9]+\-[0-9]+\-[0-9]{2}$/i.test(value);  
    }, "Ошибка.");



$.validator.addMethod( 
       "selectNone2",
      function(value, element) { 
        if (element.value == "-2") 
        { 
          return false; 
        } 
        else return true; 
      }, 
      "Ошибка." 
    ); 


$.validator.addMethod( 
       "selectNone3",
      function(value, element) { 
        if (element.value == "-1") 
        { 
          return false; 
        } 
        else return true; 
      }, 
      "Ошибка." 
    ); 



$.validator.addMethod( 
       "selectNone4",
      function(value, element) { 
        if (element.value == "-1") 
        { 
          return false; 
        } 
        
else
return true; 
      }, 
      "Ошибка." 
    ); 



$.validator.addMethod("Addcity",function(value,element){
if($("#city option:selected").val() == -2)
{
if($("#addCity")[0].value){
return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
}

         }
else 
return true;
    },"Ошибка");
 



$.validator.addMethod( 
       "selectNone5",
      function(value, element) { 
        if (element.value == "-1") 
        { 
          return false; 
        } 
        
else
return true; 
      }, 
      "Ошибка." 
    ); 




$.validator.addMethod("Addschool",function(value,element){
if($("#school option:selected").val() == -2)
{
if($("#addSchool")[0].value){
return this.optional(element) || /^[а-яА-ЯёЁ0-9-.,\№\s]{2,}$/i.test(value);
}

         }
else 
return true;
    },"Ошибка");



$.validator.addMethod("Address",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ0-9.,_\№-\s]{2,}$/i.test(value);
    },"Ошибка.");




$.validator.addMethod( 
       "selectNone6",
      function(value, element) { 
        if (element.value == "") 
        { 
          return false; 
        } 
        else return true; 
      }, 
      "Ошибка." 
    ); 





        // Validate signup form
        $("#signup").validate({
                rules: {
                        
        Docname: "required Docname",
        Surname: "required Surname",
        Name1: "required Name1",
        Patronymic: "required Patronymic",
        Email: "required Email",
        Telephone: "required Telephone",
        
        
                  
          Sex: { 
            selectNone1: true 
          }, 
         
        Date: "required Date",

        country_id: { 
            selectNone2: true
        },

        region_id: { 
            selectNone3: true
        },


        city_id: { 
            selectNone4: true
},


Addcity: {  Addcity: true },



school_id: { 
            selectNone5: true
},



Addschool: {  Addschool: true },

        

Address: "required Address",


    Class: { 
            selectNone6: true
},

file1: {
          accept: "doc",
required: true
      },

}
        });
    
     });

</script>

Надо сделать так, что если в выпадающем списке Section ничего не выбрано, то проверка Docname и file1 не работает.
Я тут пробовал подписывать if($("#Section")[0].value!=""), но не помогло sad

35

Re: PHP код для небольшой админки. Ошибка.

Думаю здесь ошибка, потому что идентификатор и вдруг нулевой элемент массива.
if($("#Section")[0].value!="")

Если выпадающий список выглядит как:
<select id="Section">
То условие будет:
if($("#Section").value!="")

36

Re: PHP код для небольшой админки. Ошибка.

<script type="text/javascript">

if($("#Section").value!="") 
{
     

    $(document).ready(function() {

 $.validator.addMethod("Docname",function(value,element){
    return this.optional(element) || /^[а-яА-ЯёЁ-\s]{2,}$/i.test(value);
    },"Ошибка.");


        $("#signup").validate({
                rules: {
Docname: "required Docname",

}
                
                

        });
    
   
    
    

    });








}
</script>

А все равно не работает:(

37

Re: PHP код для небольшой админки. Ошибка.

Ketsyki сказал:

А все равно не работает

Что не работает? Какая-то ошибка выходит? Займитесь отладкой с помощью Firebug.

38

Re: PHP код для небольшой админки. Ошибка.

Ошибок, вроде бы нет (если я, конечно смотрю туда, куда надо). Проверка запускается не зависимо от того, какое значение принимает Section sad

39

Re: PHP код для небольшой админки. Ошибка.

Все. Разобрался.

<script type="text/javascript">
     

         

    $(document).ready(function() {

 $.validator.addMethod("Docname",function(value,element){
if($("#Section option:selected").val() != "")
{
if($("#Docname")[0].value){
return this.optional(element) || /^[а-яА-ЯёЁa-zA-Z0-9-.,\№\s]{2,}$/i.test(value);
}

         }
else 
return true;
    },"Ошибка");

 $("#signup").validate({
                rules: {
                        
        Docname: {  Docname: true },

}
                
                

        });
    
   
    
    

    });

</script>

Но теперь новая проблема smile Как сделать, что, если в Section что-нибудь выбрано, то запускается проверка файла?
Проверку делаю так:

...
 $("#signup").validate({
                rules: {
file1: {
          accept: "doc",
required: true
      },
...

40

Re: PHP код для небольшой админки. Ошибка.

Попробуйте таким образом делать проверку добавив этот блок.

$("#Section").validate({
                rules: {
file1: {
          accept: "doc",
required: true
      },

41

Re: PHP код для небольшой админки. Ошибка.

Нее, это точно не будет работать sad signup это название и id формы.

Или я что-то делаю не так, или JQuery такой, но если я для формы делаю 2 скрипта для валидации, то работает только тот, который написан первым. Я, просто, думал засунуть проверку файла в отдельный скрипт и перед функцией написать if($("#Section").value!=""). Т.е. если выполняется это условие, то запускается функция с валидацией. А javascript игнорирует эту строку и сразу делает валидацию. sad

Попробовал так:

...
$.validator.addMethod( 
       "file1",
      function(value, element) { 
        if($("#Section").value=="") { 
        { 
          return false; 
        } 
        else return true; 
      }, 
      "Ошибка." 
    );
...

  $("#signup").validate({
                rules: {
                        
        ...

 
file1: { 
            file1: true
        },
...

Не работает. Гугл Хром пишет Uncaught SyntaxError: Unexpected token else
sad

42

Re: PHP код для небольшой админки. Ошибка.

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

Здесь лишняя скобка.
if($("#Section").value=="") {

43

Re: PHP код для небольшой админки. Ошибка.

...
$.validator.addMethod( 
       "file1",
      function(value, element) { 
        if($("#Section option:selected").val() != "")
{
if($("#file1").value){  
        
          return false; 
         }}
        else return true; 
      }, 
      "Ошибка." 

    );
...

$("#signup").validate({
                rules: {
                        
        ...


 
file1: { 
      accept: "doc",      
file1: true,

        },

...

Сделал по аналогии с Docname. Проверка запускается именно тогда, когда и нужно, но появилась новая проблема. Допустим, в поле Section что-нибудь выбрано. Комп валидатор пишет "Ошибка" (т.е. надо выбрать файл). Выбираю файл. Пытаюсь отправить, а валидатор продолжает писать ошибку. Вобщем, не дает мне отправить форму, даже если файл прикреплен sad

44

Re: PHP код для небольшой админки. Ошибка.

Я эти обрывки кода совершенно не в состоянии понять. Достаточно одной лишней или отсутствующей скобки, чтобы ничего не работало.

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

$("#myform").validate({
  rules: {
    age: {
      required: true
    },
    parent: {
      required: true
    }
  }
});

45 (изменено: Ketsyki, 2011-04-06 01:09:49)

Re: PHP код для небольшой админки. Ошибка.

Да это не обрывки. Это почти весь код. Вместо многоточия еще написано объявление функции и еще несколько проверок других полей. Но они на код для проверки файла никак не влияют.

Я юзаю одинаковые коды для проверки Docname(инпут) и file1 (кнопка для прикрепления файла). Проверка Docname работает нормально, а вот проверка file1 продолжает выдавать ошибку, даже если файл выбран sad

Есть мысль, что это связано с тем, что у этого поля для файла тип file, а у Docname просто поле для ввода текста

46 (изменено: Ketsyki, 2011-04-06 15:49:17)

Re: PHP код для небольшой админки. Ошибка.

Придумал smile

$.validator.addMethod( 
      "file1",
     function(value, element) { 
       if($("#Section option:selected").val() != "")
{
if($("#file1")[0].value){
       
         return true;} else return false; }
else

return true;
       
     }, 
     "Ошибка." 

   );

А теперь нужен совет. Вот есть у меня статистика юзеров по городам. Допустим, я хочу сделать так, чтоб при нажатии на город выводился список юзеров из этого города. Думаю, может сделать как-нибудь так? (в учебника что-то похожее в качестве примера приведено)

Список городов выводится в таком виде:

echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\"><A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&sort={$row['City']}');\">{$row['City']}</A></TD>\n";

Т.е. список, в котором название города является ссылкой. При нажатии на ссылку открывается страница со списком юзеров.

Дальше я пишу функцию function view_record() {} в которой будет содержаться код, который и будет выводить список юзеров.

Потом в конце страница с городами надо написать
if (empty($_GET['action'])){
$_GET['action'] = "";
}
switch($_GET['action']) {
case "view_record":
view_record();
break;
}
чтобы определить, какую функцию вызывать (возможно. буду подключать еще функции)

Так можно сделать?


Да, и еще опять с формой трабла smile На этот раз надо сделать так, что если поле Docname не пустое, то запускается проверка file1, иначе проверка не запускается.

  $(document).ready(function() {

$.validator.addMethod( 
       "file1",
      function(value, element) { 
        if($('#Docname:empty'))
{
 if($("#file1")[0].value){
        
          return true;} else return false; }
 else

 return false;
        
      }, 
      "Ошибка." 

    );

Похоже, что в этой строке что-то не так?  if($('#Docname:empty')) Я этой строкой пытаюсь проверить, пустое поле Docname или нет (в учебнике написано что это делается именно так).
В итоге получаю: Проверка запускается все время, даже когда поле Docname пустое sad

47

Re: PHP код для небольшой админки. Ошибка.

Ketsyki сказал:

чтобы определить, какую функцию вызывать (возможно. буду подключать еще функции)
Так можно сделать?

Можно конечно. Все правильно.

Проверить пустое значение можно так.

if(!$('#Docname').val())

Если что-то не выходит, то смотрите что возвращает $('#Docname')

48 (изменено: Ketsyki, 2011-04-06 21:27:54)

Re: PHP код для небольшой админки. Ошибка.

Вот где ошибка то была smile
$.validator.addMethod(
       "file1",
      function(value, element) {
        if($("#Docname")[0].value!="")
{
if($("#file1")[0].value){
       
          return true;} else return false; }
else

return true;
       
      },
      "Ошибка."

    );

49 (изменено: Ketsyki, 2011-04-06 22:37:33)

Re: PHP код для небольшой админки. Ошибка.

И еще вопрос smile

Делаю все как в учебника:
создал файл function view_record() с таким содержимым:

<?php
$dbhost = 'localhost';
$dbusername = 'myusername';
$dbuserpassword = 'mypassword';
$default_dbname = 'baza';
$records_per_page = 1000000;
$user_tablename = 'childrens';
$MYSQL_ERRNO = ";
$MYSQL_ERROR = ";
$new_win_width = 600;
$new_win_height = 400;
function html_header() {
global $new_win_width, $new_win_height;
?>
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function open_window(url) {
var NEW_WIN = null;
NEW_WIN = window.open ("", "RecordViewer",
"toolbar=no,width="+
<?php echo $new_win_width ?>+
",height="+<?php echo $new_win_height?>+
",directories=no,status=no"+
",scrollbars=yes,resize=no,menubar=no");
NEW_WIN.location.href = url;
}
//-->
</SCRIPT>
<TITLE>Сценарий просмотра базы данных</TITLE>
</HEAD>
<BODY>
<?php
}
function html_footer() {
?>
</BODY>
</HTML>
<?php
}
function db_connect($dbname='') {
global $dbhost, $dbusername, $dbuserpassword, $default_dbname;
global $MYSQL_ERRNO, $MYSQL_ERROR;
$link_id = mysql_connect($dbhost, $dbusername, $dbuserpassword);
if(!$link_id) {
$MYSQL_ERRNO = 0;
$MYSQL_ERROR = "Не удалось подключиться к узлу $dbhost.";
return 0;
}
else if(!mysql_select_db($dbname)) {
$MYSQL_ERRNO = mysql_errno();
$MYSQL_ERROR = mysql_error();
return 0;
}
else return $link_id;
}
function sql_error() {
global $MYSQL_ERRNO, $MYSQL_ERROR;
if(empty($MYSQL_ERROR)) {
$MYSQL_ERRNO = mysql_errno();
$MYSQL_ERROR = mysql_error();
}
return "$MYSQL_ERRNO: $MYSQL_ERROR";
}
function error_message($msg) {
html_header();
echo "<SCRIPT>alert(\"Error: $msg\");history.go(-1)</SCRIPT>";
html_footer();
exit;
}
?>

Дальше пишу код к странице с городами.
Подключаю файл
include "./common_dbc.inc";

$PHP_SELF = "index.php";

Дальше там много htmlа...
Города в таблице выводятся в таком виде
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\"><A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&sort={$row['City']}');\">{$row['City']}</A></TD>\n";

Дальше пишем функцию view_record

function view_record() {
Сперва тут пишем php код для выборки нужных юзеров из БД.

html_header();
Тут составляем таблицку и загоняем в нее юзеров, закрываем функцию.

html_footer();


if (empty($_GET['action'])){
$_GET['action'] = "";
}
case "view_record":
view_record();
break;
}



А вот работать это дело не хочет sad Новое окно не открывается sad

50

Re: PHP код для небольшой админки. Ошибка.

Ketsyki сказал:

Новое окно не открывается

Не открывается по формируемой здесь ссылке?
echo "<TD WIDTH=\"25%\" ALIGN=\"CENTER\"><A HREF=\"javascript:open_window('$PHP_SELF?action=view_record&sort={$row['City']}');\">{$row['City']}</A></TD>\n";

Если да, то смотрите как выглядит ссылка. Если ссылка в порядке, то двигайтесь дальше по коду отлавливая ошибку в состоянии переменных.