Php 在ajax中上传图像格式';行不通

Php 在ajax中上传图像格式';行不通,php,image,forms,upload,Php,Image,Forms,Upload,你好,我想上传一些图片到我的服务器。当我没有用ajax.load加载页面到另一个页面时,它会起作用。因此,通过与它的直接链接,它可以正常工作。但是我想点击一个链接,打开上传表单,上传图片(全部在一个窗口中)。这是因为页面在上传前正在刷新还是另一个问题?我不知道怎么解决这个问题 代码: 文件名: 托沃根·安: 问题来自这样一个事实:在加载AJAX之前,表单被发送到父页面。您发布的部分页面是通过第二个HTTP请求检索的,并且没有设置任何POST参数 最好是在加载AJAX的父页面中添加php脚本。另

你好,我想上传一些图片到我的服务器。当我没有用ajax.load加载页面到另一个页面时,它会起作用。因此,通过与它的直接链接,它可以正常工作。但是我想点击一个链接,打开上传表单,上传图片(全部在一个窗口中)。这是因为页面在上传前正在刷新还是另一个问题?我不知道怎么解决这个问题

代码:


文件名:
托沃根·安:

问题来自这样一个事实:在加载AJAX之前,表单被发送到父页面。您发布的部分页面是通过第二个HTTP请求检索的,并且没有设置任何POST参数


最好是在加载AJAX的父页面中添加php脚本。另外,在表单元素中指定一个“target”属性,以便跟踪哪个服务器页面正在处理请求。

ajax不是直接上载图像,您应该使用一些插件来上载图像

在上一篇文章中,我使用了这个插件(ajax.form)来创建instant


下面的链接是一个简单的例子,说明如何使用这个插件并上传图片

我不明白标题和问题之间的关系。你不能通过ajax直接上传文件。您需要使用隐藏iframe或其他方法。如果你启动谷歌,你会看到无数的解决方案和插件来帮助你。这将帮助你上传即时图像,使用这个插件
<?php
include('includes/connect.php');

if(isset($_POST['uploadImg'])){
$extension = end(explode(".", $_FILES["file"]["name"]));
$name = $_FILES["file"]["name"];

if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
     mysql_query("INSERT INTO images (itemID,imgPath,imgName,imgExtension,imgAlt)               VALUES (".$_POST['itemNumber'].",'upload','".$name."','".$extension."','".$name."')")or die('kan niet uploaden'.mysql_error()); 
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Uw afbeelding is toegevoegd aan item".$_POST['itemNumber'];
      echo "<a id='uploadNew' href='#'>Nog een item uploaden</a>";
      }                 


mysql_query("INSERT INTO images (itemID,imgPath,imgName,imgExtension,imgAlt)                VALUES (".$_POST['itemNumber'].",'upload','".$name."','".$extension."','".$name."')")or die('kan niet uploaden'.mysql_error());     
}

?>
<form method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
Toevoegen aan: 
<select name="itemNumber">
<? 
            $result = mysql_query("SELECT * FROM items");
                while($row = mysql_fetch_array($result))
                  {
                      echo '<option name="itemVal" value="'.$row['itemID'].'">'.$row['itemTitle'].'</option>';
                      echo "<br />";
                  }
        ?>
</select>
<input type="submit" name="uploadImg" value="submit" />
</form>