Php 从照片上载会话创建用户\u id?
我使用这个php照片上传脚本将图像存储到数据库中 我的数据库有三列:“用户id”“name”“image” 一切都很好。图像已上载,但目前它不存储用户id,我想尝试创建它,以便当用户点击upload时,它使用其会话id存储其用户id 我尝试过将这两个函数添加到原始mysql查询中:Php 从照片上载会话创建用户\u id?,php,mysql,image,upload,Php,Mysql,Image,Upload,我使用这个php照片上传脚本将图像存储到数据库中 我的数据库有三列:“用户id”“name”“image” 一切都很好。图像已上载,但目前它不存储用户id,我想尝试创建它,以便当用户点击upload时,它使用其会话id存储其用户id 我尝试过将这两个函数添加到原始mysql查询中: (用户id、图像、名称)“$\u会话['user\u id']。”, <html> <head> <title>Upload Image</title
(用户id、图像、名称)
“$\u会话['user\u id']。”,
<html>
<head>
<title>Upload Image</title>
</head>
<body>
<form method="post" enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit" value="Upload">
</form>
<?php
include("includes/_config/connection.php");
// file properties
$file = $_FILES['image']['tmp_name'];
if (!isset($file))
echo "";
else {
$image = addslashes (file_get_contents ($_FILES['image']['tmp_name']));
$image_name = addslashes ($_FILES['image']['name']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
if ($image_size == FALSE)
echo "That's not an image.";
else {
if (!$insert = mysql_query ("INSERT INTO ptb_img_uploads (user_id, image, name) VALUES ('', '".$_SESSION['user_id']."', '$image_name','$image')"))
echo "There was a problem sending the image.";
else
echo "Your image was successfully uploaded.";
}
}
?>
</body>
</html>
上传图像
您忘记启动PHP会话\ u start(),它启动会话函数。您还必须在某处设置$\u会话['user\u id']
更改此代码:
<?php
session_start();
?>
<html>
<head>
<title>Upload Image</title>
</head>
<body>
<form method="post" enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit" value="Upload">
</form>
<?php
include("includes/_config/connection.php");
// file properties
$file = $_FILES ['image'] ['tmp_name'];
if (!isset($file))
{
echo "";
}
else
{
$image = addslashes (file_get_contents ($_FILES ['image']['tmp_name']));
$image_name = addslashes ($_FILES['image']['name']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
if($image_size == FALSE)
{
echo "That's not an image.";
}
else
{
if(!$insert = mysql_query ("INSERT INTO ptb_img_uploads (user_id, image, name) VALUES ('".$_SESSION['user_id']."', '$image_name','$image')"))
{
echo "There was a problem sending the image.";
}
else
{
echo "Your image was successfully uploaded.";
}
}
}
?>
</body>
</html>
记住在目录中创建一个名为“tmp”的文件夹,使用chmod 777
如果要测试会话是否工作,请执行以下操作:
<?php
session_start();
$_SESSION['test_session']="this is a test session";
var_dump($_SESSION);
?>
希望有帮助 您必须首先启动会话。会话_start();。在那之后插入$insert;然后将查询粘贴到mysql中并检查错误。如果您回显$\u SESSION['user\u id']
它有什么值?当我这样做时,它似乎没有回显任何内容首先检查他的代码的列名!然后看看他的价值观。他为user_id指定了NULL“”,并将user_id、image和name对应的三个值替换为四个值!我想你们可以看到他和我代码的不同!
if(!$insert = mysql_query ("INSERT INTO ptb_img_uploads (user_id, image, name) VALUES ('".$_SESSION['user_id']."', '$image', '$image_name')"))
if(!$insert = mysql_query ("INSERT INTO ptb_img_uploads (user_id, image, name) VALUES ('".$_SESSION['user_id']."', '$image', '$image_name')"))