Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php iOS Emulator录制的音频存储在本地主机上_Php_Ios_Localhost_Emulation_File Transfer - Fatal编程技术网

Php iOS Emulator录制的音频存储在本地主机上

Php iOS Emulator录制的音频存储在本地主机上,php,ios,localhost,emulation,file-transfer,Php,Ios,Localhost,Emulation,File Transfer,最近我开发了一个iOS应用程序,在模拟器上进行测试。De app录制音频,我想将录制的音频存储在web服务器上。因为我在模拟器上测试应用程序,所以我想将录制的音频存储在本地主机服务器上。我有一个PHP网页,它有一个上传文件的表单和一个处理post方法的脚本。我使用该本地网页URL将文件从emulator传输到本地主机服务器。我还使用了文件传输插件,并在config.xml中注册了它。到目前为止还不起作用。所以我的第一个问题是:是否可以将录制的音频从仿真器传输到本地主机服务器?还是需要从iOS设备

最近我开发了一个iOS应用程序,在模拟器上进行测试。De app录制音频,我想将录制的音频存储在web服务器上。因为我在模拟器上测试应用程序,所以我想将录制的音频存储在本地主机服务器上。我有一个PHP网页,它有一个上传文件的表单和一个处理post方法的脚本。我使用该本地网页URL将文件从emulator传输到本地主机服务器。我还使用了文件传输插件,并在config.xml中注册了它。到目前为止还不起作用。所以我的第一个问题是:是否可以将录制的音频从仿真器传输到本地主机服务器?还是需要从iOS设备到真正的共享托管服务器进行测试?谢谢大家!

javascript:

var fileURL = "myrecording.wav";
var uri = encodeURI("http://www.localhost.dev/site/test/index.php");

var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=fileURL.substr(fileURL.lastIndexOf('/')+1);
//options.fileName="file";
//options.mimeType="text/plain";

var headers={'headerParam':'headerValue'};

options.headers = headers;

var ft = new FileTransfer();
ft.onprogress = function(progressEvent) {
    if (progressEvent.lengthComputable) {
        loadingStatus.setPercentage(progressEvent.loaded / progressEvent.total);
    } else {
        loadingStatus.increment();
    }
};

ft.upload(fileURL, uri, win, fail, options);

function win(r) {
    alert("Code = " + r.responseCode + " Response = " + r.response + " Sent = " + r.bytesSent);
}

function fail(error) {
    alert("An error has occurred: Code = " + error.code + ", upload error source " + error.source + ", upload error target " + error.target);
}
具有以下窗体处理程序的PHP脚本:



您不需要真正的共享托管服务器或iOS设备进行测试,只要您能够在您的测试机器上正确设置要使用的服务即可。如果表单在mac上使用127.0.0.1/which工作,那么它也将在模拟器中工作。尝试使用Safari访问模拟器中的页面。

您需要将iOS设备上载到服务器(本地/任何其他)。这意味着我需要在iOS设备上而不是在本地模拟器上测试它?
<?php
  if($_SERVER['REQUEST_METHOD'] == 'POST' ): 
    if ($_FILES["file"]["error"] > 0) {
        echo "Error: " . $_FILES["file"]["error"] . "<br>";
    } else {
        echo "Upload: " . $_FILES["file"]["name"] . "<br>";
        echo "Type: " . $_FILES["file"]["type"] . "<br>";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
        echo "Stored in: " . $_FILES["file"]["tmp_name"] . " <br>";

        move_uploaded_file($_FILES["file"]["tmp_name"],
        "upload/" . $_FILES["file"]["name"]);
        echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
    }
  endif;
?>