gpt4 book ai didi

Php 关联两个 ID

转载 作者:太空宇宙 更新时间:2023-11-03 12:32:31 25 4
gpt4 key购买 nike

我正在做一个学校项目,它正在创建一个简单的留言簿。 (我是初学者)我一直在研究如何将两个 id 相互联系起来。我有两个不同的数据库表,一个称为留言簿,用于存储帖子,另一个称为成员,用于存储注册成员(member)。

现在我需要做的是将 PostID 与 UserID 相关联,这样您就可以看到谁写了哪个帖子。现在当一个成员登录时它说所有的帖子都是那个用户写的,如果我和另一个用户一起登录它说那个用户写了所有的帖子。

这是包含留言簿的 home.php 文件的代码,我还有一个 guestbookuservalidation 文件,如果您需要,我可以发布它?

    <?php
session_start();
$username = $_SESSION['username'];
if($_SESSION['login'] == 1) //om sessionen är 1 så

{
echo "<h1>Välkommen till gästboken $username</h1>";




// Connect to the database
mysql_connect("localhost", "root", "");
mysql_select_db("guestbookdatabase");

//******************************************************************//
//Form and add stuff

echo "<h2>Posta till Gästboken</h2>
<form action='home.php' method='post'>
<table>
<tr>
<td>Titel:</td>
<td><input type='text' name='titel' style='width: 300px;'</td>
</tr>
<tr>
<td>Inlägg:</td>
<td><textarea name='inlägg' style='width: 300px; height: 100px;'></textarea></td>
</tr>
<tr>
<td></td>
<td><input type='submit' name='postknapp' value='Posta'</td>
</tr>
</table>
</form>";





//******************************************************************//
//Display stuff
echo "<h2>Nuvarande Poster</h2>";

if ($_POST['postknapp']) {

$title = strip_tags($_POST['titel']);
$message = strip_tags($_POST['inlägg']);

if ($title && $message) {

//Lägg till i databasen
mysql_query("INSERT INTO guestbook (Title,Post) VALUES ('$title','$message')");

echo "Ditt inlägg har lagts till i gästboken!";

}
else

echo "Du har inte fyllt i nödvändig information för att kunna göra ett inlägg.";

}

$query = mysql_query("SELECT * FROM guestbook ORDER BY PostID DESC");
$sql = mysql_query("SELECT * FROM members WHERE Username = $username");
$numrows = mysql_num_rows($query);
if ($numrows > 0){

while ( $row = mysql_fetch_assoc($query) ) {
$id = $row['PostID'];
$name = $sql;
$title = $row['Title'];
$message = $row['Post'];
$date = $row['Timestamp'];

$message = nl2br($message);

echo "<div>
Av <b>$name</b> vid <b>$date</b><br />
<h2>$title</h2> <p>
$message
</div> <hr />";

}

}
else
echo "Inga inlägg hittades.";




//*****************************************************************//

mysql_close();



?>

<a href="logga_ut.php">Logga ut</a>





<?php

}
else // om session inte är 1 så
{
echo "Du har INTE tillåtelse till gästboken! Klicka på länken för att logga in!";
?>
<p>
<br/><a href="index.html">Till login >></a>
<?php
}

?>

最佳答案

几点。如果您正在为学校项目执行此操作,我绝对不会使用 mysql_* 函数。这些已被弃用,如果我给你评分,你会因为使用它们而自动失败。我建议查看 mysqli_* 函数,它们在用法上与 mysql_* 对应函数类似。

其次,您没有采取任何措施来防止 SQL 注入(inject)。再一次,如果我给你打分,我会让你不及格,因为你刚刚破坏了数据库。

最后,您要做的是在查询中使用 JOIN 条件。我对你的表结构了解不够,所以你可能需要调整这个例子:

SELECT *
FROM guestbook
INNER JOIN members ON members.MemberID = guestbook.MemberID <-- use whatever your member id fileds are in the two tables here
WHERE members.Username = ?
ORDER BY guestbook.PostID DESC

关于Php 关联两个 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14737177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com