我想用Jquery在我的数据表中编辑照片。为此,
<a href="ajax/edit_photo.php?id=<?=$row['ID']?>" class="edit ajax" id="">-->'Edit Photo Link'
edit_photo.php:
<div class="photoEdit">
<form id="editphoto" action="1.php?id=<?=$_GET['id']?>" method="post" class="stdform quickform" enctype="multipart/form-data">
//My Forms...
</form>
</div>
我的Jquery:
jQuery('#editphoto').submit(function(){
var formdata = jQuery(this).serialize();
var url = jQuery(this).attr('action');
jQuery.post(url, formdata, function(data){
jQuery('.notifyMessage').addClass('notifySuccess');
//otherwise
//jQuery('.notifyMessage').addClass('notifyError');
jQuery.fn.colorbox.resize();
});
return false;
});
和我的1.php
<?
include("../../connection.php");
include("../../functions/upload.php");
?>
<?
$limit="1048576";
if(isset($_GET['kaydet'])){
$id=$_GET['id'];
$icerik=$_POST['icerik'];
$picture=DoUpload("picture",$limit,$FileUploadPath);
$result=mysql_query("SELECT * FROM tbl_photo WHERE ID=$id");
$picture2=mysql_result($result,0,"picture");
if($picture=='')
$picture=$picture2;
if($picture!="")
{
mysql_query("UPDATE `tbl_photo` SET `picture` = '$picture',`icerik` = '$icerik' WHERE `ID` =$id");
}
}
?>
我编写了一些东西。但是在我的操作中,Jquery不起作用。所以,什么都没有。
答案 0 :(得分:1)
您无法通过jquery上传二进制文件。您必须使用iframe方法,或使用一些jquery库。 (这个很容易尝试。http://blueimp.github.com/jQuery-File-Upload/)
另外,您在PHP代码中混合了GET和POST。由于您在jquery中执行POST请求,因此无法使用$ _GET在PHP中获取任何变量。它们都应该用$ _POST替换。
答案 1 :(得分:0)
用于图片上传或其他二进制数据使用隐藏的iframe。
<div style="position:absolute;top-500px;">
<iframe src="blank.htm" id=ifr name="ifr">
</iframe>
</div>
然后将您的图片表单提交给iframe。
<form target="ifr" onsubmit="pollstatus(<?php=$id ?>)">
使用唯一标识符向表单添加隐藏的表单字段。
然后使用setinterval每隔100ms用ajax调用处理状态,如果处理完成,则使用ajax检索图像以获取html代码,使用css转换显示图像,但是您喜欢它,并将其放在你的结果div