2011-05-01 262 views
0

嘿家伙,我想知道如果我可以得到一些我正在为一个项目建设的网站的帮助。它几乎完成,但我正在努力与一个部分,这基本上是评论。问题与评论类型评论

我正在创建一个电影评论网站,有点像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> &nbsp;&nbsp;&nbsp; <a  href="register.php">Register</a> &nbsp;&nbsp;&nbsp; <a href="login.php">Login</a>/<a href="<?php echo $logoutAction ?>">Logout</a> &nbsp;&nbsp;&nbsp; <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>&nbsp;</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>&nbsp;</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>&nbsp;</p> 
<p>&nbsp;</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>&nbsp;</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

对不起,我不明白你的问题。 'SELECT * FROM条评论MovieID = $ movieid ORDER BY ReviewID DESC'? – dog 2011-05-01 23:11:54

+0

向我们展示一些代码... – fvu 2011-05-01 23:11:54

回答

2

评论表包含评论,对吗?我可以看到你有一个MovieID列,所以你应该能够以条件WHERE MovieID = '$current_movie_id'来查询数据库以获得对某个电影的评论。

+0

是的,你是对的评论表持有的意见。这有一定道理,问题是,虽然我的类使用Dreamweaver和它基本上是宝宝的,你的整个时间,所以我试图做到这一点W/O所有这些服务器的行为并没有什么,但现在它就像这样在我的头上,并如果我能以某种方式发布我的代码,那只会是一团糟。但古斯塔夫确实对Where子句有意义。但还有一个简单的问题,我将如何声明$ current_movie_id? – Nate 2011-05-02 01:45:47