通过更改一个post,简单的php编辑表单得到一个错误


Get an error by changing a post, simple php editing form

全部!

我不能改变我做过的表格。它在我的本地主机(xampp)上都能正常工作,但当我在服务器上上传时,它就不起作用了。我认为问题出在查询上,登录正在工作,所以我不认为是在数据库连接或获取数据上。我在else语句中得到了$message = "Error";,我还试着看看echo $titulli; echo $content;是否能使用该表单,它是否有效。我使用error_reporting(E_ALL & ~E_NOTICE);并收到这些问题(警告)

Warning: mysql_real_escape_string(): Access denied for user 'user'@'localhost' (using password: NO) in /home/user/public_html/test/admin-panel.php on line 12
Warning: mysql_real_escape_string(): A link to the server could not be established in /home/user/public_html/test/admin-panel.php on line 12

这是代码:

    <?php 
    session_start();
    include_once 'db_connect.php'; 
    if(isset($_GET['update']) && !empty($_GET['update'])) {
    $id = $_GET['update'];
    $id1=mysql_real_escape_string($id);
    $titulli = $_POST['emri'.$id];
    $titulli1=mysql_real_escape_string($titulli);
    $content = $_POST['mesazhi'.$id];
    $content1=mysql_real_escape_string($content);
    $date = date('Y-m-d H:i:s');
    // echo $titulli;
    // echo $content;
    $update_query = "UPDATE `lagjja`.`content` SET `titulli` = '".$titulli1."', `content` = '".$content1."', `data` = '".$date."' WHERE `content` .`ID` = ".$id1;
    $update_result = $mysqli->query($update_query);
    if($update_result) {
        $message = "you changes succeeded";
    } 
    else {
        $message = "Error";
        //header('Location: index.php');
        //die();
    }
    }
    if (isset($_SESSION['id'])) {
        $userId = $_SESSION['id'];
        $username = $_SESSION['username'];
    } 
    else {
            echo "Your are not connected return to homepage";
            header('refresh:2; url=index.php') ;
            die();
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <meta charset="UTF-8" />
    <?php include("head.php"); ?>
        <link rel="stylesheet" type="text/css" href="css/style-adminpanel.css" />
        <title>Admin-panel</title>
    </head>
    <body>
    <header>
        <a href="logout.php">logout</a>
        <a href="index.php">return to page</a>
        <div id="logo-postimit">
            <img src="img/logo.png" alt="logo" />
    </div>
    </header>
    <?php if(isset($message) && !empty($message) ) {
        echo $message
    ;} ?>
        <div id="content">
            <div id="krejt-forma">
            <?php 
                    $post_query = "SELECT * FROM content LIMIT 3";
                    $result = $mysqli->query($post_query);
                if ($result->num_rows > 0) { 
                    while($row = $result->fetch_assoc()) : ?>
                    <!-- 2.1 tab section -->  
                    <div class="forma col-lg-4 col-md-4 col-sm-12">
                         <form id="post-forma" role="form" name="post-form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>?update=<?php echo $row['ID']; ?>">
                              <input class=" form-control titulli col-lg-12 col-md-12 col-sm-12 col-xs-12" type="text" id="emri<?php echo $row['ID']; ?>" name="emri<?php echo $row['ID']; ?>" placeholder="Titulli" value="<?php echo $row['titulli']; ?>" />
                              <textarea class="form-control mesazhi col-lg-12 col-md-12 col-sm-12 col-xs-12"  rows="12" id="mesazhi<?php echo $row['ID']; ?>" name="mesazhi<?php echo $row['ID']; ?>" placeholder="Mesazhi"><?php echo $row['content']; ?></textarea>
                              <input type="submit" class="submit col-lg-12 col-md-12 col-sm-12 col-xs-12 btn btn-primary" value="Posto"></input>
                        </form>
                    </div>
                    <?php endwhile; } ?>
        </div>
    </div>
    <!-- 3.0 footer -->
    <footer>
        <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<!-- bootstrap implimentation -->
    <script src="js/bootstrap.min.js"></script>
    <!-- bootstrap imp end -->
        <script src="js/navbar.js"></script>
    </footer>
</body>
</html>

这是我的db_conncet.php

<?php
/* Konfigurimi i databazes */
define("HOST", "localhost"); 
define("USER", "laxhja"); 
define("PASSWORD", "password");   
define("DATABASE", "laxhja");   
define("SECURE", FALSE); 
/* Lidhja me databaze */
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
$mysqli->set_charset("utf8");
?>
<input type="submit" class="submit col-lg-12 col-md-12 col-sm-12 col-xs-12 btn btn-primary" value="Posto"></input>

将其更改为

<input type="submit" name="update" class="submit col-lg-12 col-md-12 col-sm-12 col-xs-12 btn btn-primary" value="Posto"/>

我通过将mysql_real_escape_string更改为mysqli_real_escape_string来解决它,并为它提供了2个参数。

像这样。

$con = mysqli_connect("localhost", "laxhja", "password", "laxhja");
if(isset($_GET['update']) && !empty($_GET['update'])) {
    $id = $_GET['update'];
    $id1=mysqli_real_escape_string($con, $id);
    $titulli = $_POST['emri'.$id];
    $titulli1=mysqli_real_escape_string($con, $titulli);
    $content = $_POST['mesazhi'.$id];
    $content1=mysqli_real_escape_string($con, $content);
    $date = date('Y-m-d H:i:s');...