我目前正在研究带有文件目录的多图像上传器。我想将文件名存储在我的 MySQL 中。
如何通过 php 将这些变量(图像名称)存储在我的表中?
如何通过 php 检索变量?
上传者生成的网址:
- http://www.website.com/imageupload/index.php?i=4ff4bfd02c241.jpg
- http://www.website.com/imageupload/index.php?i=4ff4bfd02c242.jpg
文件名:
- 4ff4bfd02c241.jpg
- 4ff4bfd02c242.jpg
表名:网址
id: autoincrement
image_name
我能够通过这个回显出路径和名称:
$images = explode(',', $_GET['i']);
$path = Configuration::getUploadUrlPath('medium', 'target');
foreach ($images as $image) {
echo '<div><p>' . $path . $image . '</p><img src="' . $path . $image . '" /></div>';
}
?>
$images = explode(',', $_GET['i']);
$path = Configuration::getUploadUrlPath('medium', 'target');
if(is_array($images)){
$sql = "INSERT INTO `urlimage` (`image_name`) VALUES ";
foreach ($images as $image) {
//echo '<div><p>' . $path . $image . '</p><img src="' . $path . $image . '" /></div>';
$value[] = "(".$path.$image.")"; // collect imagenames
}
$sql .= implode(',', $value).";"; //build query
//don't know how you send queries, you should use a kind of mysqli-functionality
queryfunction($sql);
}
另外:你应该考虑使用 $_POST 而不是 $_GET,因为根据浏览器的不同,有一个长度限制(其中一些在 255 个字符后剪切 URL).
也不要将用户定义的内容直接放入您的数据库中。你需要某种转义(http://php.net/manual/en/function.mysql-real-escape-string.php)。