尝试在sql查询中使用echo

时间:2014-08-24 21:14:06

标签: php mysql sql

我需要"回声" SQL查询中的一些东西。

我注意到这不起作用:

$usernames = echo htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');  
$file = $_GET['file'];


$sql="INSERT INTO bekeken(username, filename)VALUES(".$usernames.", '".$fileloc."')";
$result=mysql_query($sql);

echo thingy工作得很完美,它回应用户名应该如何。

但现在我想在数据库中插入该用户名以及使用PHP GET接收的文件名。

我想我做错了很多,但我没有看到它。

提前致谢!

标记

FullCode:

  mysql_connect("localhost", "movidz", "password!") or die(mysql_error());
  mysql_select_db("movidz") or die(mysql_error());

  $file = $_GET['file'];

  $sql_scale = "SELECT * FROM films WHERE filename = '".$file."'";
  $result_scale = mysql_query($sql_scale)or die(mysql_error());

  while($row = mysql_fetch_array($result_scale)){$titel=$row['titel'];}
  echo "<div class='player_filmtitel_div'><h1 class='player_filmtitel'>".$titel."</h1></div>";

2 个答案:

答案 0 :(得分:0)

您正在插入$fileloc,但您正在定义$file

$usernames = echo htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');  
$fileloc = $_GET['file']; // changed $file to $fileloc


$sql="INSERT INTO bekeken(username, filename)VALUES(".$usernames.", '".$fileloc."')";
$result=mysql_query($sql);

答案 1 :(得分:0)

按原样,您要设置一个等于echo htmlentities(...)的变量。没有必要回应它,因为htmlentities()已经返回一个字符串。如果需要,您可以在之后回复它。 echo仅用于显示普通html中回显的内容。所以你的代码应该是这样的:

$usernames = htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');  
$file = $_GET['file'];


$sql="INSERT INTO bekeken(username, filename) VALUES('{$usernames}', '{$file}')";
$result=mysqli_query($connection, $sql);
除了使用未定义的$ fileloc之外,

您的报价已经过时了。另外,我建议使用mysqli_