[英]ie8 and ie9 with jquery.form.js returns html instead of data echo from PHP
[英]How do I get data back from php call using Jquery.form.js?
我正在使用jquery.form.js中的AjaxForm()調用來嘗試運行一個php腳本,該腳本會將數據放入數據庫中,然后將其取出。 但是,如何使用jquery.form.js中的ajaxForm調用進行該調用?
* 更新:添加了一些代碼*
$('#profilepicbutton').live('change', function(){
$("#preview").html('');
$("#preview").html('<img src="loader.gif" alt="Uploading...."/>');
$("#registerpt3").ajaxForm({target: '#preview'}).submit();
/*$.post(
"register3.php",{
target:'#preview'},
function(data){*/
$("#preview").html('');
$("#preview").append("<img src="+data+"></img>");
});
我的PHP代碼...
if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
{
$name = $_FILES['profilepicinput']['name'];
$size = $_FILES['profilepicinput']['size'];
if(strlen($name))
{
list($txt, $ext) = explode(".", $name);
if(in_array($ext,$valid_formats))
{
if($size<(1024*1024)) // Image size max 1 MB
{
$actual_image_name = time().$session_id.".".$ext;
$tmp = $_FILES['profilepicinput']['tmp_name'];
$fp = fopen($tmp, 'r');
$data = fread($fp, filesize($tmp));
$data = addslashes($data);
fclose($fp);
if(mysql_query("insert into Personal_Photos (Email, Pics) values('$email', '$data')"))
{
$query="select Pics, MAX(ID) from Personal_Photos where Email='$email'";
$result=mysql_query($query) or die("Error: ".mysql_error());
$row=mysql_fetch_array($result);
header("Content-type: image/jpg");
print($row['Pics']);
}
else
{
die('Invalid query: ' . mysql_error());
echo "failed";
}
}
else
echo "Image file size max 1 MB. Image Size:"+$size;
}
else
echo "Invalid file format..";
}
else
echo "Please select image..! Bull shit".$email;
exit;
}
因此,您是說數據應該自動神奇地返回?
當我調用ajaxForm時應該調用一個函數嗎?
更新:請求一個示例
你好。 我不想成為那個不斷詢問示例代碼的家伙,但是沒有任何機構舉過ajaxForm()調用並成功取回數據並將其發布到該頁面的示例嗎? 我不知道該怎么辦...我剛剛嘗試過的是
$('#profilepicbutton').live('change', function(){
$("#preview").html('');
$("#preview").html('<img src="loader.gif" alt="Uploading...."/>');
$("#registerpt3").ajaxForm({
target: '#preview',
success: function(data)
{
$("#preview").html('');
$("#preview").append("<img src="+data+"></img>");
}
}).submit();
});
當我使用Firebug找出數據中包含的內容時,它告訴我它是未定義的。 真的很困惑。 請幫忙。
您只需做: $('#myFormId').ajaxForm();
並且它應該可以自動魔術地工作:)您可以將任何標准的$ .ajax選項傳遞給ajaxForm(完成和成功回調等)。
您可以在此處查看完整的文檔: http : //jquery.malsup.com/form/#getting-started
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.