0

このコードでは、変数の 1 つしか渡すことができません。このように見える場合は、firstname変数を渡すことしかできません。誤ってつづりを間違えfistnameたとき(データを投稿するように設定したとき)、lastname変数のみが渡されました。だから、私の問題である両方の変数を投稿できるようにしたい

var firstname = $("#firstname").val();
var lastname = $("#lastname").val();
$.ajax({
    type: "POST",
    url: "modify_profile.php",
    data: { firstname: firstname, lastname: lastname },
    success: function( data){             
    }
});

data: {"firstname":firstname,"lastname":lastname} も書き込もうとしましたが、それもうまくいきませんでした。

これが完全なコードです。これは私のファイルmodify_profile.phpです。すべてがこのファイルで行われます。

 <!Doctype HTML>
    <html>
        <head>
            <title> Resor </title>
        </head>
        <body>
        <?php
        require("../db/connect.php");
        $email='test@gmail.com';


        // Hämtar all data från personen som är inloggad
        $sql="SELECT * from user WHERE email='$email'";
        $query=mysqli_query($dbcon,$sql);
        $result=mysqli_fetch_array($query);

        $firstname=$result['first_name'];
        $lastname=$result['last_name'];
        $password=$result['password'];



        // HERE IS WHERE FIRSTNAME IS CHANGED IN CASE IT HAS BEEN UPDATED.
            if( isset($_POST['firstname'])) 
            {

        $firstname=( $_POST['firstname']);
        $query=mysqli_query($dbcon, "UPDATE user SET first_name='$firstname' WHERE     email='$email'");
         $result = mysqli_query($dbcon,$query);
          if (!$result) {
              die("MySQL error ".mysqli_errno().": ".mysqli_error()."\n<br>When executing  <br>\n$query\n<br>");
          }

          }
//  HERE IS WHERE LASTNAME IS CHANGED IN CASE IT HAS BEEN UPDATED.
        if( isset($_POST['lastname']))
           {

        $lastname=( $_POST['lastname']);
        $query=mysqli_query($dbcon, "UPDATE user SET last_name='$lastname' WHERE email='$email'");
        $result = mysqli_query($dbcon,$query);
          if (!$result) {
              die("MySQL error ".mysqli_errno().": ".mysqli_error()."\n<br>When executing <br>\n$query\n<br>");
          }

          }



            echo "<p> Namn: $firstname $lastname  <span id=name> &Auml;ndra</span> </p>";






             ?>
            <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">   </script>
            <script>
            $(document).ready(function(){



                $('#name').on('click', function() {
                    var node = "<form action='modify_profile.php' method='post'><p>F&ouml;rnamn: <input type='text' name='firstname' id='firstname'value='<?=$firstname?>' ></p><p>Efternamn: <input type='text' name='lastname' id='lastname' value='<?=$lastname?>'></p><p>V&auml;nligen mata in ditt l&ouml;senord f&ouml;r att bekr&auml;fta &auml;ndringen.</p> <p> L&ouml;senord:<input type='password' name='password'  id='password'></p><input type='button' value='Spara &auml;ndringar' id='confirm_name'/><input type='button' value='Avbryt' id='cancel_name_change' /></form>";





                    $(this).parent().after(node);
                    $(this).parent().remove();

                }); 

                            //if the confirm button has been pressed
                $(document).on('click', '#confirm_name', function(){
                var firstname = $("#firstname").val();
                var lastname=$("#lastname").val();
                var password=$("#password").val();


                if(password!='<? echo "$password"; ?>'){
                alert("No changes has been made due to wrong password.");
                }
                else{
                    $.ajax({
                        type: "POST",
                        url: "modify_profile.php",
                      data: {"firstname":firstname,"lastname":lastname},
                        success: function( data){     
                        }
                    }); 
                }
                });

                // if interrupted 

                $(document).on('click', '#cancel_name_change', function(){

                location.reload();

                });

                //slutparentes
            });
            </script>
            <?php require("../db/close.php")
            ?>
        </body> 
    </html>
4

0 に答える 0