我正在尝试上传2张图片作为HTML表单的一部分。现在我的PHP脚本依赖于相同元素的名称,这样我就可以重用两个图像的代码,而不必只改变一个元素。
rasen.addEventListener(MouseEvent.CLICK, f2_MouseOverHandler);
function f2_MouseOverHandler(event:MouseEvent):void {
CHARA.gotoAndPlay(46); //here is the problem
// add an ENTER_FRAME handler to check every frame
CHARA.addEventListener(Event.ENTER_FRAME, chara_EnterFrameHandler)
}
function chara_EnterFrameHandler(event:Event):void {
if (CHARA.currentFrame == 80)
{
CHARA.x = ally[1]; //just random possition for now
// remove the ENTER_FRAME after the condition is met
// so it stops executing each frame
CHARA.removeEventListener(Event.ENTER_FRAME, chara_EnterFrameHandler);
}
}
:
upload.php
我的HTML表单:
<?php
define("IMAGE_DIRECTORY", "images");
uploadFile("file");
uploadFile("file_1");
function uploadFile($name) {
//If the directory for images does not exist, create it
if(!is_dir(IMAGE_DIRECTORY)) {
mkdir(IMAGE_DIRECTORY, 0777, true);
}
var_dump(move_uploaded_file($_FILES[$name]["tmp_name"], IMAGE_DIRECTORY . "\\" .basename($_FILES[$name]["name"])));
}
?>
<form id="create_card_form" enctype="multipart/form-data" method="post">
Front Text: <input type="text" name="front_text"><br><br>
Front Media (Image or Video Link) <input type="text" name="front_media"><br><br>
<input type='file' name='file' id='image_uploaded_front' accept='image'/><br><br>
Back Text: <input type="text" name="back_text"><br><br>
Back Media (Image or Video Link) <input type="text" name="back_media"><br><br>
<input type='file' name='file' id='image_uploaded_back' accept='image'/><br><br>
<input type="submit" value="CREATE CARD" onClick="createCard(this.form)">
</form>
:
Ajax
然而,当我使用这个表格时,第二个图像代替第一个图像,我假设是因为它们被命名为相同。但是,更改名称将导致需要添加大量重复代码来处理图像。有没有办法用同样的名字做这个?
更新:我根据我的问题的答案编辑了我的Javascript和PHP脚本。现在,问题似乎是将图像正确地提供给PHP脚本。现在,使用我的代码,在PHP中上传图像时出错。
答案 0 :(得分:0)
您的问题的答案是否定的 - 您不能POST
具有相同名称的属性。
问题的解决方案实际上正是您尝试实现的目标,而不是您尝试实现的方式。你不想要重复的代码(这很好) - 所以把需要多次运行的代码放到一个函数中。
<?php
uploadFile("file");
uploadFile("secondFile");
function uploadFile($name) {
define("IMAGE_DIRECTORY", "images");
//If the directory for images does not exist, create it
if(!is_dir(IMAGE_DIRECTORY)) {
mkdir(IMAGE_DIRECTORY, 0777, true);
}
var_dump(move_uploaded_file($_FILES[$name]["tmp_name"], IMAGE_DIRECTORY . "\\" .basename($_FILES[$name]["name"])));
}
?>
编辑:刚发现Alex Howansky在评论中打败了我。