除非我添加不需要的特定代码行,否则上传图片不会上传

时间:2019-07-12 07:03:33

标签: php mysql image upload

除非添加此特定代码行,否则代码将不起作用,该代码行旁边带有注释(第3行)。有人对我应该做什么有任何公开建议吗?因为我不会$_SESSION['username'] = "nameofuser"; :

以下是代码的链接:sweettune.info/code.txt

使用“ $_SESSION['username'] = "nameofuser";”并删除它,但是如果删除它,我的图片将不会上传。

<?php
  session_start();
   $_SESSION['username'] = "nameofuser"; // Won't work unless this line of code is added
if(isset($_POST['submit'])){
move_uploaded_file($_FILES['file']['tmp_name'],"uploads/".$_FILES['file']['name']);
  $conn = mysqli_connect("localhost","newkit","frtysk489","configurenow");
$q = mysqli_query($conn,"UPDATE users SET image = '".$_FILES['file']['name']."' WHERE username = '".$_SESSION['username']."'");
}
  ?>

1 个答案:

答案 0 :(得分:0)

如果您不想使用$_SESSION['username'] = 'nameofuser';,则需要从表中选择另一个唯一列(例如记录ID)来标识要更新的行。

不更新数据库的原因是因为您的查询专门询问WHERE username = '".$_SESSION['username']."'"

"UPDATE users SET image = '".$_FILES['file']['name']."' WHERE username = '".$_SESSION['username']."'"

没有唯一标识符,表行将无法更新,更新将失败。

快乐编码