嘿伙计们,我想知道我是否可以获得一些我正在为一个项目建设的网站的帮助。它已接近完成但我正在努力完成一部分,这基本上就是评论。
我正在创建一个电影评论网站,有点像IMDB.com,但我的只是为了上课,但我真的很挣扎于我真正想要工作的部分。
对我来说理想的情况是,有人能够输入他们想要搜索的电影,然后在他们推送提交后,他们会被带到另一页。在该页面上的电影信息,如电影名称,描述,流派,评级等......然后在其下面,回顾人们对电影的看法。但是,我不能得到的一件事就是当有人在“阿凡达”中输入电影评论时,但是当他们输入Ghost Rider时,会出现完全相同的评论,如果有意义,我希望它们是分开的。
对于我的桌子,
电影
MovieID, Description, Rating, Genre
评论
ReviewID, Name, Review, MovieID
对于这部分我只是处于停滞状态,它有点烦我,我看了很多地方,仍然无法找到我正在寻找的东西。 这是我的代码,我很遗憾地告诉我,我不擅长PHP或编程。所有这些都是在Dreamweaver中完成的,所以如果它看起来很乱,那就是原因。
<?php require_once('../Connections/lesson6.php'); ?>
<?php
//initialize the session
if (!isset($_SESSION)) {
session_start();
}
// ** Logout the current user. **
$logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
$logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
//to fully log out a visitor we need to clear the session varialbles
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
unset($_SESSION['MM_Username']);
unset($_SESSION['MM_UserGroup']);
unset($_SESSION['PrevUrl']);
$logoutGoTo = "index.php";
if ($logoutGoTo) {
header("Location: $logoutGoTo");
exit;
}
}
?>
<?php require_once('../Connections/lesson6.php'); ?>
<?php
if (!isset($_SESSION)) {
session_start();
}
$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";
// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
// For security, start by assuming the visitor is NOT authorized.
$isValid = False;
// When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
// Therefore, we know that a user is NOT logged in if that Session variable is blank.
if (!empty($UserName)) {
// Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
// Parse the strings into arrays.
$arrUsers = Explode(",", $strUsers);
$arrGroups = Explode(",", $strGroups);
if (in_array($UserName, $arrUsers)) {
$isValid = true;
}
// Or, you may restrict access to only certain users based on their username.
if (in_array($UserGroup, $arrGroups)) {
$isValid = true;
}
if (($strUsers == "") && true) {
$isValid = true;
}
}
return $isValid;
}
$MM_restrictGoTo = "login.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {
$MM_qsChar = "?";
$MM_referrer = $_SERVER['PHP_SELF'];
if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
if (isset($_SERVER['QUERY_STRING']) && strlen($_SERVER['QUERY_STRING']) > 0)
$MM_referrer .= "?" . $_SERVER['QUERY_STRING'];
$MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
header("Location: ". $MM_restrictGoTo);
exit;
}
?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$colname_GetMovie = "-1";
if (isset($_GET['Search'])) {
$colname_GetMovie = $_GET['Search'];
}
mysql_select_db($database_lesson6, $lesson6);
$query_GetMovie = sprintf("SELECT * FROM movie WHERE MovieName = %s", GetSQLValueString($colname_GetMovie, "text"));
$GetMovie = mysql_query($query_GetMovie, $lesson6) or die(mysql_error());
$row_GetMovie = mysql_fetch_assoc($GetMovie);
$totalRows_GetMovie = mysql_num_rows($GetMovie);
mysql_select_db($database_lesson6, $lesson6);
$current_MovieID=MovieID;
$query_Recordset1 = "SELECT * FROM reviews WHERE MovieID=$current_MovieID";
$Recordset1 = mysql_query($query_Recordset1, $lesson6) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Results</title>
<link href="styles/style_sheet.css" rel="stylesheet" type="text/css" />
<style type="text/css">
a:link {
color: #0F0;
}
a:visited {
color: #0F0;
}
</style>
</head>
<body>
<div id="main_container">
<div id="header">
</div><!--End of header-->
<div class="shadow">
<div id="navbar"><a href="index.php">Home</a> <a href="register.php">Register</a> <a href="login.php">Login</a> / <a href="<?php echo $logoutAction ?>">Logout</a> <a href="Search.php">Search</a></div><!--End of NavBar-->
</div><!--End of navbar shadow-->
<br />
<div class="shadow">
<div id="Content">
<h2> Results:</h2>
<?php if ($totalRows_GetMovie == 0) { // Show if recordset empty ?>
<form id="form1" name="form1" method="post" action="">
Sorry, there was no movie with that name in the database. Click <a href="Search.php">here</a> to search again.
</form>
<?php } // Show if recordset empty ?>
<p> </p>
<?php if ($totalRows_GetMovie > 0) { // Show if recordset not empty ?>
<form action="" name="Movie_Search"method="get">
<p>Movie Name: <?php echo $row_GetMovie['MovieName']; ?></p>
<p> Movie Description: <?php echo $row_GetMovie['Description']; ?></p>
<p>Genre: <?php echo $row_GetMovie['Genre']; ?></p>
<p>Rating: <?php echo $row_GetMovie['Rating']; ?></p>
<p> </p>
</form>
<?php } // Show if recordset not empty ?>
<label for="movie_search"></label>
<form action="" method="get">
<center><h2>Reviews</h2></center>
<?php do { ?>
<table width="566">
<tr>
<td width="20" height="97"><p><img src="Pictures/Male-User-icon.png" width="67" height="67" /></p></td>
<td width="534"><p> <?php echo $row_Recordset1['Name']; ?> says:</p>
<p><?php echo $row_Recordset1['Review']; ?></p>
<p>-------------------------------------------------------------------------------------------------</p></td>
</tr>
</table>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
<p> </p>
<p> </p>
<form id="insert_comments" s style="border:thin" name="insert_comments" method="POST"first_name">
First Name:</label>
<br />
<input type="text" name="first_name" id="first_name" />
<br>
<label for="desc">Comments:<br /></label>
<textarea name="comments" id="comments" cols="45" rows="5"></textarea>
</p>
<p>
<input type="submit" name="submit" id="submit" value="Submit" />
</p>
</form>
<p> </p>
</div>
<!--End of Contentr-->
</div><!--End of content shadow-->
<div class="footer">
<hr />© Nate Christensen<hr />
</div><!--End of footer-->
</div><!--End of Main Container-->
</body>
</html>
<?php
mysql_free_result($GetMovie);
mysql_free_result($Recordset1);
?>
答案 0 :(得分:2)
评论表包含评论,对吗?我可以看到你有一个MovieID列,所以你应该能够使用条件WHERE MovieID = '$current_movie_id'
查询数据库,只获得某部电影的评论。