- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
卡住了,尝试从ajax上传到w3schools版本,但没有成功。
我的 _events.php 脚本包含以下内容来获取文件信息:
<input name="event_image" type="file" />
我的 _eventscreate.php 脚本无法将文件上传到我的 _gallery/目录,上传后我想将文件的 URL 保存到我的数据库中(请参阅 SQL 查询)。
<?php // Get Event ID
$location=$_GET['location'];
// Get values from form
$event_name=$_POST['event_name'];
$event_description=$_POST['event_description'];
$event_date=$_POST['event_date'];
$event_time=$_POST['event_time'];
$event_cost=$_POST['event_cost'];
$event_image=$_POST['event_image'];
// Connection to MySQL Database.
include ('_includes/_dbconnection.php');
include ('_includes/_dbopen.php');
// Update Event using Event ID.
$sql="INSERT INTO b_events (ename, edescription, edate, etime, ecost, locationid, eimage)VALUES('$event_name', '$event_description', '$event_date', '$event_time', '$event_cost', '$location', '$event_image')";
$result=mysql_query($sql);
if($result){
header('Location: _events.php');
}
else {
header('Location: _home.php');
}
?>
请帮忙
最佳答案
通过 URL,我假设您指的是文件本地副本的路径,而不是远程源位置。如果我弄错了,答案可能是“不要使用文件上传”。
当你的php脚本被执行时(除非你做了任何特别奇怪的事情),这意味着文件上传已经完成并且文件信息(名称,大小等)被存储在$_FILE中。在您能够存储或使用其路径(或者确实将其移动到 _gallery)之前,您需要设置该路径。上传后,文件将存储在 $_FILES[fileID]["tmp_name"] 的路径中。但是您不能直接在此路径上进行操作,例如移动或读取操作(至少我在 Apache2 中不能)。
首先,您需要通过 PHP 的 inbuit 方法将该文件写入您选择的位置。例如:
move_uploaded_file($_FILES[fileID]["tmp_name"], "_gallery/".$_FILES[fileID]["name"]);
之后,该文件就属于您,您可以按照您的意愿进行处理,并且它的地址(上例中的“_gallery/”.$_FILES[fileID][“name”])只是另一个 PHP 字符串。
如果您所说的 URL 是指该文件的向外地址(某人将其放入浏览器中以访问该文件),那么您需要自己构建它。在最简单的情况下,文件位于 webroot 中,这意味着将相对路径连接到您刚刚编写的文件。如果您不想使用硬编码的基本 url,则 $_SERVER 中的值可能对你有用。
关于PHP上传文件,保存文件url到MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10139212/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!