[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. -=Zhenek=-

    -=Zhenek=- Elder - Старейшина

    Joined:
    31 Dec 2007
    Messages:
    271
    Likes Received:
    77
    Reputations:
    1
    Подскажите регулярку чтоб выдрать ФИО.

    PHP:
    preg_match('#<td class="bg_color2" align="right" width="130">Ф.И.О.</td><td class="bg_color4">([\s\S]*)</td>#Ui'$responce$result);
    Неработает т.к написано с новой строки
     
  2. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    попробуй типа
    #/Ф\.И\.О\.<\/td>\r\n<td class="bg_color4">(.+?)<\/td>/s#
     
    _________________________
    1 person likes this.
  3. -=Zhenek=-

    -=Zhenek=- Elder - Старейшина

    Joined:
    31 Dec 2007
    Messages:
    271
    Likes Received:
    77
    Reputations:
    1
    Почти но нужно чтоб и Ф.И.О. было.. так таких таблиц там полно,а мне нужно именно это(
     
  4. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Ну выводи
    PHP:
    echo 'Ф.И.О: '.$match[1];
     
    1 person likes this.
  5. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    PHP:
    if (preg_match('/<td class="bg_color4">(\w+\s\w+\s\w+)<\/td>/',$a,$m))
         print 
    $m[1];
     
  6. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    eLWAux, ты опоздал... Ответ на этот вопрос был дан 20мин. перед тобой :)
    Страница в кеше, чтоли?
     
  7. РедкийГад

    РедкийГад New Member

    Joined:
    6 Aug 2009
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Что посоветуете почитать для того что бы в пхп + мускул и соответственно sql-иньекциях,xss разобраться?а-то книг много,а что читать хз..
     
  8. Gaus

    Gaus Member

    Joined:
    8 Feb 2009
    Messages:
    136
    Likes Received:
    36
    Reputations:
    3
    https://forum.antichat.ru/thread81500.html
     
  9. geforse

    geforse Elder - Старейшина

    Joined:
    2 Mar 2008
    Messages:
    617
    Likes Received:
    290
    Reputations:
    1
    Как лучше проверять куки у пользователей ?
    Я имею ввиду чтобы они туда ничего плохого не записывали
     
  10. WAYS

    WAYS New Member

    Joined:
    12 Nov 2008
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    Code:
    $COOKIEdata = array("language","login","pass");
    foreach($COOKIEdata as $k=>$v)		$_COOKIE[$v] = isset($_COOKIE[$v]) ? htmlspecialchars($_COOKIE[$v]) : "";
    
     
  11. geforse

    geforse Elder - Старейшина

    Joined:
    2 Mar 2008
    Messages:
    617
    Likes Received:
    290
    Reputations:
    1
    спасибо за ответы) новы вопрос)

    [​IMG]

    Как мне обновить поле ava у только одного (конкретного) пользователя ?

    PHP:
    /* Не пойму что нужно в Order by  написать*/

    UPDATE `usersSET ava='".$ava."' ORDER BY ????
     
  12. WAYS

    WAYS New Member

    Joined:
    12 Nov 2008
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    PHP:
    UPDATE `usersSET ava='$ava' where id='$id'
    на понятном языке "order by" это сортировка по, а "where" это выборка по параметрам

    PHP:
    Например Select (берем) * (всеfrom test (в таблице тестwhere name="Андрей" (у которых ячейка имя Андрейorder by id (и сортируем по id)
     
    #11152 WAYS, 8 Aug 2009
    Last edited: 8 Aug 2009
  13. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    geforse
    PHP:
    UPDATE `usersSET ava='".$ava."' WHERE id=нужный_ID  
     
    _________________________
  14. Вася Рогов

    Вася Рогов New Member

    Joined:
    6 Jul 2009
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    подкиньте код, который логиница на сайте майл.ру (http://win.mail.ru/cgi-bin/auth)
     
  15. -JC-

    -JC- Member

    Joined:
    10 Mar 2009
    Messages:
    54
    Likes Received:
    18
    Reputations:
    11
    PHP:
    <?php

    $url 
    "http://win.mail.ru/cgi-bin/auth";  
    $ch curl_init();   
    curl_setopt($chCURLOPT_URL$url);  
    curl_setopt($chCURLOPT_RETURNTRANSFER,1);  
    curl_setopt($chCURLOPT_POST1);  
    curl_setopt($chCURLOPT_POSTFIELDS"login=логин&passwd=пароль");  
    $result curl_exec($ch);  
    echo 
    $result;

    ?>
    Наверно как-то так...
     
  16. Вася Рогов

    Вася Рогов New Member

    Joined:
    6 Jul 2009
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    извиняюсь, забыл сказать (девичья память, ы), мне курл не подходит) есть ли другие способы залогиница?)
     
  17. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    fsockopen();
    socket_steam_create();
     
  18. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    как сделать так чтобы вывод текста в PHP CLI автоматически производился в кодировке dos-866 ?
     
  19. KaMiKadZe

    KaMiKadZe Elder - Старейшина

    Joined:
    24 Feb 2006
    Messages:
    163
    Likes Received:
    35
    Reputations:
    19
    PHP:
    <?php
    class Pages
    {
        private 
    $table// таблица из которой выводить
        
    private $page// страница на которой мы сейчас
        
    private $lines// сколько выводить записей
        
    private $where// условие вывода из базы
        
    private $order_by// группировка вывода из базы
        
    public $prefix_p// префикс страницы

        
    public function select_page($table$page$lines$where$order_by)
        {
            if(
    trim($where)) {
                
    $this->where " WHERE ".$where;
            } else {
                
    $this->where "";
            }
            if(
    trim($order_by)) {
                
    $this->order_by " ORDER BY ".$order_by;
            } else {
                
    $this->order_by "";
            }

            
    $this->page $page 1// чтобы страницы выводились с 0, а считались с 1
            
    $this->lines $lines;
            
    $this->table $table;
            
    $begin $this->page $this->lines;
            
    $sql "SELECT * FROM `".$this->table."`".$this->where.$this->order_by.
                
    " LIMIT ".$begin.", ".$this->lines;
            
    $result mysql_query($sql);
            
    $return = array();
            while (
    $obj mysql_fetch_object($result))
                
    array_push($return$obj);
            return 
    $return;
        }
        public function 
    link_page()
        {

            
    $sql "SELECT COUNT(*) FROM `".$this->table."`".$this->where.$this->order_by;
            
    $value mysql_query($sql);
            
    $value mysql_fetch_row($value);
            
    $alllines $value[0];
            
    $str ceil($alllines $this->lines); // общее число страниц
            
    if($str <= 6) {

                for (
    $i 0$i $str$i++) {
                    if(
    $i == $this->page) {
                        
    $return .= "[".($i 1)."]";
                    } else {
                        
    $return .= "<a href='".$this->prefix_p."=".($i 1)."'>[".($i 1)."]</a>";
                    }
                }
                return 
    $return;
            } else {
                
    $str $str 3;

                for (
    $i 0$i 3$i++) {
                    if(
    $i == $this->page) {
                        
    $return .= "[".($i 1)."]";
                    } else {
                        
    $return .= "<a href='".$this->prefix_p."=".($i 1)."'>[".($i 1)."]</a>";
                    }
                }

                
    $return .= "...";
                for (
    $a 0$a 3$a++) {
                    if(
    $str == $this->page) {
                        
    $return .= "[".($str 1)."]";
                    } else {
                        
    $return .= "<a href='".$this->prefix_p."=".($str 1)."'>[".($str 1)."]</a>";
                    }
                    
    $str++;
                }
                return 
    $return;
            }
        }
    }
    ?>
    Выводиться [1][2][3]...[8][9][10], как сделать чтобы при переходе на 2, 3 и т.д страницы выводились [2][3][4]...[8][9][10], [3][4][5]...[8][9][10] и т.д
    Работает так
    PHP:
    class->select_page($table,$p,3,$where,$order_by);
    $p это страница на который мы сейчас exapmle.php?p=1 или exapmle.php?p=3...
    3 - сколько записей на страницу
     
    #11159 KaMiKadZe, 9 Aug 2009
    Last edited: 9 Aug 2009
  20. KaMiKadZe

    KaMiKadZe Elder - Старейшина

    Joined:
    24 Feb 2006
    Messages:
    163
    Likes Received:
    35
    Reputations:
    19
    Уже есть
    PHP:
      $sql "SELECT * FROM `".$this->table."`".$this->where.$this->order_by.
                
    " LIMIT ".$begin.", ".$this->lines
    Проблема не в выводе записей с ними все отлично, проблема как сделать в навигации чтобы по когда переходишь по страницам они увеличивались...
    сейчас по страницам как не ходи будет
    [1][2][3]...[8][9][10]
    а надо чтобы когда например на страницу [3] жмешь стало
    [3][4][5]...[8][9][10]
     
Thread Status:
Not open for further replies.