php - 如何将日期和user_id插入mysql

标签 php mysql sql

我是 PHP 和 MySQL 的新手。我尝试制作留言板,用户可以在上面发布一些消息,每个登录的用户都可以阅读。

现在,当有人添加消息时,不会写入表 author_id 和 date_added。显示结果时我需要它们。

这里是new.php

if(isset($_POST['formSubmit']))
{
    $errorMessage = "";

    if(empty($_POST['formTitle'])) 
    {
        $errorMessage .= "<li>Doesn't have title!</li>";
    }
    if(empty($_POST['formContent'])) 
    {
        $errorMessage .= "<li>The field for content is empty!</li>";
    }

    if(empty($errorMessage)) 
    {
        $db = mysql_connect("localhost","root","");
        if(!$db) die("Error connecting to MySQL database.");
        mysql_select_db("homework3" ,$db);

        $sql = "INSERT INTO massages (author_id, date_added, title, content) VALUES ('$_POST[author_id]', '$_POST[date_added]', '$_POST[formTitle]', '$_POST[formContent]')";
        mysql_query($sql);

        header("Location: index.php");
        exit();
    }
}

<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
<div><label for='formTitle'>Title<input type="text" name="formTitle" value=""   style="width: 350px;"></label></div></br>

<div><label for='formContent'>Content</div><textarea name="formContent" style="width: 344px; height: 100px;"></textarea>

<input type="submit" class="formbutton" name="formSubmit" value="Send"/>

</form>

编辑: 我不知道你是否需要这个,但这是我显示按摩的方式:

$sql = 'SELECT username, msg_id, title, content, date_added FROM massages as m, users  as u WHERE author_id = user_id ORDER BY m.date_added DESC';

  $result = mysqli_query($link, $sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
    $real_date = date('d.m.Y', $row['date_added']);
    echo '<table>
   <tr>
   <td>' . $row['msg_id'] . '. ' . $row['title'] . '</td>
   </tr>
   <tr>
     <td>' . $row['content'] . '</td>
   </tr>
   <tr>
<td>By<span style="color: #CC0033;">' . $row['username'] . '</span> on   <span style="color: #CC0033;">' . $real_date . '</span></td></br>
</tr>
</table>';
}

最佳答案

当作者登录时,在 session 中存储author_id

$author_id=$_SESSION['username'];

然后存入数据库。

$sql = "INSERT INTO massages (author_id, date_added, title, content) VALUES ('$author_id', 'NOW()', '$_POST[formTitle]', '$_POST[formContent]')";

注意

不要忘记在顶部开始 session

<?php
    session_start();
    // then your all code

关于php - 如何将日期和user_id插入mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19176291/

相关文章:

Python MySQLdb 没有插入所有记录

sql - 与单个更新语句组合的更新查询

php - MySQL 查询在比较 2 列时间戳时获取 future 7 天的结果

MySQLNonTransientConnectionException : Communications link failure during commit with mysql and mongodb in grails-2. 2.2

php - Require_once PHP 错误

mysql - 未设置 phpMyAdmin 权限

php - 计数项目或递增数字?

sql - 存储过程的执行时间

php - 如何使用 php 在 Intel-xdk 中显示来自 MySQL 的图像

php - 在 sql 中分组时如何获得总数?