Windows、linux+nginx+php+mysql での jquery+ajax+php ファイルのアップロードに問題があります... ファイル パスを選択した後にポップアップ表示されない js 検出サフィックスがあり、送信後にアクセスできません. 何も受け入れられません ...wnmp の下に書き込まれます。
あなたが提供した情報は本当に少なすぎます
Windows、linux+nginx+php+mysqlでのjquery+ajax+phpファイルのアップロードに問題があります...はいファイル パスを選択すると、js 検出サフィックスが表示されなくなり、送信後はアクセスできず、何も受信できません。wnmp の下に書き込まれます。 ...
php
<?php /****************************************** ajax上传入口 ******************************************/?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>导入程序</title><link href="styles/general.css" rel="stylesheet" type="text/css" /><link href="styles/main.css" rel="stylesheet" type="text/css" /><!--<link href="ajaxfileupload.css" type="text/css" rel="stylesheet">--><script type="text/javascript" src="Excel/jquery.js"></script><script type="text/javascript" src="Excel/ajaxfileupload.js"></script><script type="text/javascript"> function ajaxFileUpload() { var f_content = form.fileToUpload.value; var fileext=f_content.substring(f_content.lastIndexOf("."),f_content.length) fileext=fileext.toLowerCase() if(fileext == '') { alert('先选择文件'); return false; } if (fileext!='.csv') { alert("导入的文件,必须csv格式,重新选择!"); return false; } $("#loading") .ajaxStart(function(){ $(this).show(); }) .ajaxComplete(function(){ $(this).hide(); }); $.ajaxFileUpload ( { url:'buy_clothes_day_insert.php', secureuri:false, fileElementId:'fileToUpload', dataType: 'json', data:{name:'logan', id:'id'}, success: function (data, status) { if(typeof(data.error) != 'undefined') { /* if(data.error != '') { alert(data.error); } else { alert(data.msg); }*/ //50条插入完 if(data.msg == 1) { repeat_do_ajax(); }else if(data.msg == 2){ alert('无数据'); } } }, error: function (data, status, e) { //第一次post失败 alert(e); } } ) return false; } function repeat_do_ajax() { $.ajax({ //url:"doajaxfileupload.php", url:"buy_clothes_day_insert.php", type:"GET", dataType: 'json', data:{act:'input'}, success:function(data, status) { //还有数组重复ajax if(data.msg == 1){ //setInterval(repeat_do_ajax,1000); repeat_do_ajax(); }else if(data.msg == 0){ alert('成功导入本次所有数据!'); } }, error:function(data, status) { //防止数据库超时30后在继续 if(status == 'parsererror' || data.error == 'undefined') repeat_do_ajax(); //setInterval(repeat_do_ajax,3000); } }) }</script> </head><body><div id="wrapper"> <div id="content"> <h2>导入程序</h2> <img id="loading" src="Excel/loading.gif" style="display:none;"> <form name="form" action="" method="POST" enctype="multipart/form-data"> <table cellpadding="0" cellspacing="0" class="tableForm" height="80"> <thead> <tr> <th>选择csv文件</th> </tr> </thead> <tbody> <tr> <td><input id="fileToUpload" type="file" size="45" name="fileToUpload" class="input"></td> </tr> </tbody> <tfoot> <tr> <td><button class="button" id="buttonUpload" onclick="return ajaxFileUpload();">执行</button></td> </tr> </tfoot> </table> </form> </div></div> </body></html>
ケースの問題である可能性が非常に高いです
個別にテストを完了します:
1、js がフォーム オブジェクトを正常に取得したかどうかを確認します
2. 送信結果のフィードバックを確認します。フォームにファイルを送信せず、POST データのみを送信し、PHP バックエンド POST グローバル配列の出力を判断するなど。
3. JS を削除した後にフォーム送信を使用し、成功したかどうかを確認します。 4. ファイルのアップロードを使用します。 JS を使用して成功したかどうかを確認します (Linux サーバー上の対応するディレクトリに書き込み権限があることを確認してください)
私の長年の経験に基づいて、これは JS の問題であると判断します
あなたは 2 を使用しています。各プラットフォームは同じですか?
この省略形は問題があるように感じます
次に、それが JS の問題であるかどうかを調べています。 PHP の問題です。
JS 判定をキャンセルして、アップロードが成功したかどうかを確認してください。 ajax トリガーアラート(1) ajax 実行成功リターンアラート(...
この var f_content = form.fileToUpload.value; が変更されました
現在のエラーは次のとおりです: Uncaught SyntaxError: Unexpected end of input
Chrome IE にはそれがあります...