phpBB and login query











up vote
-1
down vote

favorite












I want to change my auth method from giving the username/password to giving the user ID/password.



I checked the auth.php file ( in /phpbb/auth/auth.php ) which includes the login() function. I've found a query :



$sql = 'SELECT user_id, username, user_password, user_passchg, user_pass_convert, user_email, user_type, user_login_attempts
FROM ' . USERS_TABLE . "
WHERE username_clean = '" . $this->db->sql_escape($username_clean) . "'";


I've changed it into :



$sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
FROM ' . USERS_TABLE . "
WHERE user_id == ' . $user_id . '";


But I'm not able to log with my ID/password.










share|improve this question




























    up vote
    -1
    down vote

    favorite












    I want to change my auth method from giving the username/password to giving the user ID/password.



    I checked the auth.php file ( in /phpbb/auth/auth.php ) which includes the login() function. I've found a query :



    $sql = 'SELECT user_id, username, user_password, user_passchg, user_pass_convert, user_email, user_type, user_login_attempts
    FROM ' . USERS_TABLE . "
    WHERE username_clean = '" . $this->db->sql_escape($username_clean) . "'";


    I've changed it into :



    $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
    FROM ' . USERS_TABLE . "
    WHERE user_id == ' . $user_id . '";


    But I'm not able to log with my ID/password.










    share|improve this question


























      up vote
      -1
      down vote

      favorite









      up vote
      -1
      down vote

      favorite











      I want to change my auth method from giving the username/password to giving the user ID/password.



      I checked the auth.php file ( in /phpbb/auth/auth.php ) which includes the login() function. I've found a query :



      $sql = 'SELECT user_id, username, user_password, user_passchg, user_pass_convert, user_email, user_type, user_login_attempts
      FROM ' . USERS_TABLE . "
      WHERE username_clean = '" . $this->db->sql_escape($username_clean) . "'";


      I've changed it into :



      $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
      FROM ' . USERS_TABLE . "
      WHERE user_id == ' . $user_id . '";


      But I'm not able to log with my ID/password.










      share|improve this question















      I want to change my auth method from giving the username/password to giving the user ID/password.



      I checked the auth.php file ( in /phpbb/auth/auth.php ) which includes the login() function. I've found a query :



      $sql = 'SELECT user_id, username, user_password, user_passchg, user_pass_convert, user_email, user_type, user_login_attempts
      FROM ' . USERS_TABLE . "
      WHERE username_clean = '" . $this->db->sql_escape($username_clean) . "'";


      I've changed it into :



      $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
      FROM ' . USERS_TABLE . "
      WHERE user_id == ' . $user_id . '";


      But I'm not able to log with my ID/password.







      php sql phpbb






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 17 hours ago









      AS Mackay

      1,6013816




      1,6013816










      asked 20 hours ago









      Germain P

      92




      92
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          You are mixing up your ' and " signs which is inevitably breaking your query. Instead of $user_id variable value being inserted into the query, it is literally inserting $user_id.



          $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
          FROM ' . USERS_TABLE . ' WHERE user_id == ' . $user_id . ';


          That would fix that issue. Even still I think you are only supposed to have a single '=' and there appears to be some more issues.



          Also I assume $user_id is an integer, but if it's a user-inputted string, then please sanitize it to prevent SQL Injection.






          share|improve this answer





















            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














             

            draft saved


            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237784%2fphpbb-and-login-query%23new-answer', 'question_page');
            }
            );

            Post as a guest
































            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote













            You are mixing up your ' and " signs which is inevitably breaking your query. Instead of $user_id variable value being inserted into the query, it is literally inserting $user_id.



            $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
            FROM ' . USERS_TABLE . ' WHERE user_id == ' . $user_id . ';


            That would fix that issue. Even still I think you are only supposed to have a single '=' and there appears to be some more issues.



            Also I assume $user_id is an integer, but if it's a user-inputted string, then please sanitize it to prevent SQL Injection.






            share|improve this answer

























              up vote
              0
              down vote













              You are mixing up your ' and " signs which is inevitably breaking your query. Instead of $user_id variable value being inserted into the query, it is literally inserting $user_id.



              $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
              FROM ' . USERS_TABLE . ' WHERE user_id == ' . $user_id . ';


              That would fix that issue. Even still I think you are only supposed to have a single '=' and there appears to be some more issues.



              Also I assume $user_id is an integer, but if it's a user-inputted string, then please sanitize it to prevent SQL Injection.






              share|improve this answer























                up vote
                0
                down vote










                up vote
                0
                down vote









                You are mixing up your ' and " signs which is inevitably breaking your query. Instead of $user_id variable value being inserted into the query, it is literally inserting $user_id.



                $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
                FROM ' . USERS_TABLE . ' WHERE user_id == ' . $user_id . ';


                That would fix that issue. Even still I think you are only supposed to have a single '=' and there appears to be some more issues.



                Also I assume $user_id is an integer, but if it's a user-inputted string, then please sanitize it to prevent SQL Injection.






                share|improve this answer












                You are mixing up your ' and " signs which is inevitably breaking your query. Instead of $user_id variable value being inserted into the query, it is literally inserting $user_id.



                $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
                FROM ' . USERS_TABLE . ' WHERE user_id == ' . $user_id . ';


                That would fix that issue. Even still I think you are only supposed to have a single '=' and there appears to be some more issues.



                Also I assume $user_id is an integer, but if it's a user-inputted string, then please sanitize it to prevent SQL Injection.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 17 hours ago









                Cillian Collins

                6477




                6477






























                     

                    draft saved


                    draft discarded



















































                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237784%2fphpbb-and-login-query%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest




















































































                    Popular posts from this blog

                    Xamarin.iOS Cant Deploy on Iphone

                    Glorious Revolution

                    Dulmage-Mendelsohn matrix decomposition in Python