Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php HTML文件输入不工作_Php_Html - Fatal编程技术网

Php HTML文件输入不工作

Php HTML文件输入不工作,php,html,Php,Html,我正在制作一个社交媒体网站,用于课堂的最后一个项目。在这个页面中,我试图允许用户插入和图像到墙上的帖子。我有html表单的代码,该表单包含在文件中,当它独立运行时,它可以完美地工作,但是当我尝试将其放入代码中时,php中的$\u FILES数组总是空的。我已经确定php.ini文件中的max post size和max input size足够大,但是我真的不知道还有什么可以做,在这一点上,我尝试了stackoverflow的每一篇文章中的每个建议。这是我的输入表格 <form metho

我正在制作一个社交媒体网站,用于课堂的最后一个项目。在这个页面中,我试图允许用户插入和图像到墙上的帖子。我有html表单的代码,该表单包含在文件中,当它独立运行时,它可以完美地工作,但是当我尝试将其放入代码中时,php中的$\u FILES数组总是空的。我已经确定php.ini文件中的max post size和max input size足够大,但是我真的不知道还有什么可以做,在这一点上,我尝试了stackoverflow的每一篇文章中的每个建议。这是我的输入表格

<form method="post" enctype="multipart/form-data">

  Select image to upload:
  <input type="file" name="myFile">

  <input type="submit" value="Upload!" name="submitForm" />

</form>
}

就像我说的,如果我把表单和php代码放在它们自己的文件中,它们可以很好地工作,但是当我把它放在文件中时,我实际上想使用它,但它永远不会工作。这是整个文件。我怀疑还有其他代码使它崩溃

        <?php

    if (isset($_POST['submitForm'])) {


        print_r($_FILES);


    }

    session_start();
    include "../includes/dbConnection.php";
    $dbConn = getDatabaseConnection("book_face");


    //if user not signed in go to login
    if (!isset($_SESSION['username'])){
        header('Location: signin.php');
    }
    //print_r($_FILES);



    function getSignedInUser($username){
        global $dbConn;
        $namedParameters = array();
        $namedParameters[':username'] = $username;

        $sql = "SELECT * FROM user
                WHERE username = :username";
        $statement = $dbConn->prepare($sql);
        $statement->execute($namedParameters);
        $record = $statement->fetch(PDO::FETCH_ASSOC);

        return $record;
    }

    //determines if signed in user is friends with this user
    function isFriends($signedInId, $userId){
        global $dbConn;
        $namedParameters = array();
        $namedParameters[':user1'] = $signedInId;
        $namedParameters['user2'] = $userId;

        $sql = "SELECT * FROM friends
                WHERE user1 = :user2
                AND user2 = :user1";
        $statement = $dbConn->prepare($sql);
        $statement->execute($namedParameters);
        $record = $statement->fetchAll(PDO::FETCH_ASSOC);

        if (empty($record)){
            return false;
        }else{
            return true;
        }
    }

    //gets records of the user from the given id
    function getProfileInfo($id){
        global $dbConn;

        $namedParameters = array();
        $namedParameters[':id'] = $id;

        $sql = "SELECT * FROM user
                WHERE id = :id";
        $statement = $dbConn->prepare($sql);
        $statement->execute($namedParameters);
        $record = $statement->fetch(PDO::FETCH_ASSOC);

        return $record;
    }



    //gets the user friends ti display in friends div
    function getUsersFriends($id){
        global $dbConn;
        $namedParameters = array();
        $namedParameters[':id'] = $id;
        /*
        $sql = "SELECT *, user.id FROM friends
        JOIN user ON user.id = friends.user2 OR user.id = friends.user1 
        WHERE user1 = :id OR user2 = :id";
        */
        $sql = "SELECT *, user.id FROM user
                JOIN friends ON friends.user1 = user.id OR friends.user2 = user.id
                WHERE friends.user1 = user.id OR friends.user2 = user.id";

        $statement = $dbConn->prepare($sql);
        $statement->execute($namedParameters);
        $records = $statement->fetchALL(PDO::FETCH_ASSOC);
        //deleteDuplicates($records);
        $counter = 0;
        $unique = array();
        foreach($records as $record){
            //print_r($record);
            //echo $record['id'];
            if (array_search($record['id'],$unique) == false && $record['id'] != $id && ($record['user1'] == $id || $record['user2'] == $id)){
                //echo $record['id'];
                //echo "true";

                $unique[] = $record['id'];
            }
        }
        $unique = array_unique($unique);
        //print_r($unique);
        echo "<h3 style='text-align:center'>Friends:</h3>";
        for ($i = 0; $i < sizeof($unique);$i++){

            $record = getProfileInfo($unique[$i]);
            //print_r($record);
            echo "<div  class='searchResult' id='".$record.['id']."' onclick='getResultId(".$record['id'].")'>";
                    //echo "<span>" . $record['firstName'] . " " . $record['lastName'] . " " . $record['username'] . "</span>";
                    echo "<img class='profilePic' src='img/".$record['avatar'] . "'>";
                    echo "<p>";
                    echo "Name: " . $record['firstName'] . " " . $record['lastName'] . "</br>";
                    echo "Username: " . $record['username'] . "</br>";
                    echo "Lives in: " . $record['state'] . "</br>";
                    echo "<a href='profile.php?id=".$record['id']."'>View Profile</a>";
                    echo "</p>";
                echo "</div>";
        }
    }

    $signedInUser = getSignedInUser($_SESSION['username']);
    $profileId = $_GET['id']; //id of curren users profile
    $profileRecords = getProfileInfo($profileId); //records of current profile


    //displas record info of inpued user
    function displayProfileInfo($record){
        global $signedInUser;
        global $profileRecords;


        echo "<img style='margin:0 auto' class='profileAvatar' src='img/".$record['avatar'] . "'></br>";
        echo "<div style='margin:0 auto;margin:10px;text-align:center;background-color:white;border:2px solid black'>";
        echo "<h3 id='profileName' style='text-align:center'>".$record['firstName']. " " . $record['lastName']. "</h3>";
        echo "<h3 id='profileName' style='text-align:center'>Username: ".$record['username']. "</h3>";
        echo "<h3 id='profileName' style='text-align:center'>Lives in: ".$record['state']. "</h3>";
        echo "<h3 id='profileName' style='text-align:center'>".$record['age']. " years old" .  "</h3>";
        echo "<h3 id='profileName' style='text-align:center'>Gender: ".$record['gender'] .  "</h3>";
        echo "</div>";
        if (!isFriends($signedInUser['id'],$record['id']) && $signedInUser['id'] != $profileRecords['id']){
            echo "<button type='button' style='margin:0 auto;text-align:center;margin-left:200px' class='btn btn-default' id='addFriend' onclick='var user1 = ".json_encode($signedInUser['id']).";var user2 = ".json_encode($record['id']).";addFriend(user1,user2);'>Add Friend</button>";
        }else{
            echo "<button type='button' style='margin:0 auto;text-align:center;margin-left:200px' class='btn btn-default' id='removeFriend' onclick='var user1 = ".json_encode($signedInUser['id']).";var user2 = ".json_encode($record['id']).";removeFriend(user1,user2);'>Remove Friend</button>";
        }

    }



    function getUserPosts($id){



        global $dbConn;
        global $signedInUser;
        global $profileRecords;
        $namedParameters = array();
        $namedParameters[':id'] = $id;

        if ($id == $signedInUser['id']){
            /*
            echo "<div style='width:90%;height:10%'>";
                echo "<h3 style='text-align:center'>Create new post</h3>";
                //echo "<textarea id='postContent' name='postContent'>What's on your mind?</textarea>";
            echo "</div>";
            */
            echo "<html><html>";
            echo "<div id='theNewPost' class='post'>";
                echo "<div style='float:right' class='btn-group' role='group'>";
                  //echo "<button id='textPost' type='button' class='btn btn-default' onclick='changePost(1)'>Text Post</button>";
                  //echo "<button id='imagePost' type='button' class='btn btn-default' onclick='changePost(0)'>Image Post</button>";
            echo "</div>";
                echo "<h3 style='text-align:justify;margin-left:50px'>Create new post</h3>";

                echo "<textarea id='postContent' name='postContent'>What's on your mind?</textarea>";
                echo "<button type='button' style='float:right;margin-right:100px;margin-top:20px' class='btn btn-default' id='newPostBtn' onclick='var id=".json_encode($signedInUser['id']).";addPost(id);'>Post</button>";
                echo "<span id='postError' class='error' style='clear:both'></span>";
            echo "</div>";
        }

        $sql = "SELECT * FROM post
        WHERE authorId = :id";

        $statement = $dbConn->prepare($sql);
        $statement->execute($namedParameters);
        $records = $statement->fetchALL(PDO::FETCH_ASSOC);

        foreach ($records as $record){
            echo "<div class='homePostSearchResult'>";
                echo "<img src='img/".$profileRecords['avatar']."' />";
                echo "<p style='margin-left:20px;margin-top:20px'>".$record['content']."</p>";
                echo "<button type='button' style='float:right;margin-right:50px' class='glyphicon glyphicon-hand-right' id='".$record['id']."' value='".$record['likes']."'onclick='var id=".json_encode($record['id']).";likePost(id)'> Likes: ".$record['likes']."</button>";
            echo "</div>";
        }
    }



    ?>

    <!DOCTYPE html>
    <html>
        <head>
            <title> </title>
            <link type="text/css" rel="stylesheet" href="css/Project2.css">
            <script src="https://code.jquery.com/jquery-3.1.1.min.js"   integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8="   crossorigin="anonymous"></script>
            <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
            <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
            <link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
            <script type="text/javascript" src="data.json"></script>
            <script>
                /*
                function changePost(type){
                    alert(type);
                    if (type == 0){
                        $("#postContent").css("display","none");
                        $("#imgUploadForm").css("display","block");
                        $("#file").css("display","block");
                        $("#selectImgSpan").css("display","block");
                        $("#fileSubmit").css("display","block");
                    }else{
                        $("#postContent").css("display","block");
                        $("#imgUploadForm").css("display","none");
                        $("#file").css("display","none");
                        $("#selectImgSpan").css("display","none");
                        $("#fileSubmit").css("display","none");
                    }

                }*/
                function signOut(){
                    window.location="signin.php";
                }

                function removeFriend(user1,user2){
                    $.ajax({
                        type: "post",
                        url: "removeFriend.php",
                        dataType: "json",
                        data: { "user1": user1, "user2": user2 },
                        success: function(data,status) {
                                alert(data);
                                window.location.reload();
                          },
                          complete: function(data,status) { //optional, used for debugging purposes
                              //alert(status);
                          }
                    });
                }

                function likePost(id){
                    $.ajax({
                        type: "post",
                        url: "likePost.php",
                        dataType: "json",
                        data: { "id":id, "likes":$("#" + id).val() },
                        success: function(data,status) {

                                $("#" + id).val(parseInt($("#" + id).val()) + 1);
                                $("#" + id).html(" Likes: " + $("#" + id).val());
                          },
                          complete: function(data,status) { //optional, used for debugging purposes
                              //alert(status);
                          }
                    });
                }

                function addFriend(user1, user2){
                    $.ajax({
                        type: "post",
                        url: "addFriend.php",
                        dataType: "json",
                        data: { "user1": user2, "user2": user1 },
                        success: function(data,status) {
                                alert(data);
                                window.location.reload();
                          },
                          complete: function(data,status) { //optional, used for debugging purposes
                              //alert(status);
                          }
                    });
                }

                function addPost(id){
                    alert(id);
                    alert($('input[type=file]')[0].files[0].name)
                    if (validatePost()){
                        $.ajax({
                            type: "post",
                            url: "addPost.php",
                            dataType: "json",
                            data: { "postContent": $("#postContent").val(), "id": id },
                            success: function(data,status) {
                                    alert("Successfully posted!");
                                    window.location.reload();
                              },
                              complete: function(data,status) { //optional, used for debugging purposes
                                  //alert(status);
                              }
                        });
                    }else{
                        alert("Invalid Post");
                    }
                }

                function validatePost(){
                    var isValid = true;
                    $("#postError").html("");

                    if ($("#postContent").val().trim().length == 0){
                        isValid = false;
                        $("#postError").html("Post cannot be blank");
                    }
                    if ($("#postContent").val().trim().length > 40){
                        isValid = false;
                        $("#postError").html("Post cannot exceed 40 characters");
                    }

                    return isValid;
                }



                $(document).ready( function(){ 
                $("#friends").css("display","block");
                 $("#postContent").change( function(){  
                     validatePost();
                 } );//username changes
                });

            </script>
        <nav>
                <form id="homeSearch" method="post">
                    <?php
                    if (isset($_SESSION['username'])){
                        echo"<p style=';font-size:18px;position:absolute;top:0;right:0;color:white' class='navbar-text navbar-right'>Signed in as <a style='color:orange' href='profile.php?id=".$signedInUser['id']."'' class='navbar-link'>".$signedInUser['username']."</a></p>";
                    }

                    ?>
                    <span id="bookFace">BookFace</span>



                    <div style="float:right" class="dropdown">

                  <button style="margin-top:0;margin-left:0" class="btn btn-default dropdown-toggle" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
                    Navigate
                    <span class="caret"></span>
                  </button>

                  <ul class="dropdown-menu" aria-labelledby="dropdownMenu1">
                    <li><a href="home.php">Home</a></li>
                    <?php
                        if (isset($_SESSION['username']) && $_SESSION['username'] == "ZMark"){
                            echo "<li><a href='admin.php'>Admin Page</a></li>";
                            echo "<li><a href='statistics.php'>Statistics</a></li>";
                        }
                    ?>
                    <?php
                        if (isset($_SESSION['username'])){
                            echo "<li><a href='profile.php?id=".$profileRecords['id']."'>Profile</a></li>";
                            echo "<li role='separator' class='divider'></li>";
                            echo "<li><a href='signin.php'>Sign Out</a></li>";
                        }else{
                            echo "<li><a href='signin.php'>Sign In</a></li>";
                            echo "<li><a href='signup.html'>Sign Up</a></li>";
                        }
                    ?>
                  </ul>
                </div>





            </nav>
        </head>
        <form method="post" enctype="multipart/form-data">

          Select image to upload:
          <input type="file" name="myFile">

          <input type="submit" value="Upload!" name="submitForm" />

        </form>

        <body style="background-color:#d7dde5">
            <div id="profileInfo">
                <?php

                    displayProfileInfo($profileRecords);
                ?>
            </div>
            <div id="friends">

                <?php
                    getUsersFriends($profileRecords['id']);
                ?>
            </div>
            <div id= "friendPosts">
                <?php
                    getUserPosts($profileRecords['id']);

                ?>
            </div>
        </body>
    </html>

    <?php

    ?>

您的标记中没有操作?
你可以试试这个

<form method="post" enctype="multipart/form-data" action="your_action.php">

//your form

</form>

//你的表格

那里有很多与问题无关的代码。你能把这个问题减到最小限度吗?看到你正在把表格发送到你的
PHP
页面了吗?对不起,我不知道你的意思。您是否询问表单是否将数据发送到另一个php文件进行处理?如果这就是你的意思,那么表单没有action或onsubmit函数。
action
属性不是严格要求的。如果省略了它,则表单将发布到当前URL,除非另有覆盖。看见
<form method="post" enctype="multipart/form-data" action="your_action.php">

//your form

</form>