Javascript 指向预先附加文件的Web表单的超链接

Javascript 指向预先附加文件的Web表单的超链接,javascript,php,html,rest,Javascript,Php,Html,Rest,我想给用户一个点击链接,该链接会将文件(存储在我的服务器上)发布到另一个网站的web表单(编辑:并将用户重定向到另一个网站)。 下面是HTML的外观示例: <form action="forward_uploaded_file.php"> Uploaded File: <input type="file" name="uploaded_file" value="upload_file.dat"><br> <input type="submit

我想给用户一个点击链接,该链接会将文件(存储在我的服务器上)发布到另一个网站的web表单(编辑:并将用户重定向到另一个网站)。

下面是HTML的外观示例:

<form action="forward_uploaded_file.php">
   Uploaded File: <input type="file" name="uploaded_file" value="upload_file.dat"><br>
   <input type="submit" value="Submit">
 </form> 

上传文件:
但是,出于安全原因,无法设置input type=“file”的值

是否有其他方法可以让我做我想做的事

我正在使用PHP、Javascript和HTML


谢谢。

希望我正确理解了这个问题

  • 用户在网站A上
  • 用户单击按钮将文件发送到网站B
  • 点击会触发网站a上的PHP脚本
  • 该PHP脚本通过POST请求将文件(已存储在网站a上)发送到网站B
  • 我的答案是:使用卷曲

    $post = array('extra_info' => 'extra_info',
                  'file_contents'=> realpath($file_name_with_full_path));
    
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $target_url_websiteB);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    $result=curl_exec($ch);
    curl_close($ch);
    echo $result;
    

    您可以控制目标网站吗?如果您试图上载存储在服务器上的文件,则客户端无法完成。你为什么不使用PHP
    curl
    从服务器上的脚本发送它呢?我认为你可以使用html5的文件api,首先在水下下载文件,然后将其添加到帖子中。我无法控制目标网站。我想将用户重定向到其他网站,而不是简单地下载它的内容。我认为我需要使用Header而不是CURL,但我找不到一个例子来说明如何做到这一点。正如@Barmar所指出的,如果你的服务器上有文件,你就无法让客户端将其发送到这个第三方网站。您最好将该文件作为下载文件提供给客户端,然后让客户端以面向第三方站点的形式将该文件放入“文件上载”对话框。谢谢您的时间。您列表中的第4项与我尝试做的稍有不同:1.用户在网站A上。2.用户单击按钮将文件发送到网站B。3.单击会触发网站A上的脚本。4.该脚本发送文件(已存储在网站A上)通过POST请求并将用户重定向到网站B。在按钮上使用javascript事件单击并执行一个窗口。位置。替换(“);或在php脚本中执行重定向到B(标题('location:'.$newURL);)。我喜欢您的想法。但是网站a创建了文件(基于用户提交的不同文件)。由于该文件不是由用户提交的,因此替换窗口位置将无法将该文件发送到网站B。我认为我需要使用PHP将用户重定向到其他网站。我认为我必须将该文件转换为二进制文件,然后使用Header命令指定它。但我不确定如何执行。单击按钮on将触发php脚本,将文件从a发送到b。因此,您可以简单地在该文件的末尾放置一个头重定向。另一种方法是对php脚本(发送文件)使用AJAX GET请求,并设置不同的window.location。这不是文件转换问题。