1

我希望在文件上传后重定向回我的主页,我目前有一个回显语句,表明文件已上传(完成后)。任何帮助将不胜感激!

<?php
  $tags[]= $_POST['Sport'];
  $tags[]= $_POST['bcTags1'];
  $tags[]= $_POST['bcTags2'];
  $tags[]= $_POST['bcTags3'];
  $tags[]= $_POST['hiddenTag'];
  $metaData = array(
    'name' => $_POST['bcVideoName'],
    'shortDescription' => $_POST['bcShortDescription'],
    'tags' => $tags
  );
# Rename the video file     
       $file = $_FILES['theVideoFile'];     
       rename($file['tmp_name'], '/tmp/' . $file['name']);     
       $file_location = '/tmp/' . $file['name'];      
       # Send video to Brightcove     
       $id = $bc->createMedia('video', $file_location, $metaData);

echo $id.'Uploaded Successfully!';
?>
4

5 回答 5

2

正常使用header()即可:

  //echo $id.'Uploaded Successfully!'; <--- output breaks header()
  header('Location: /yourpage.php');
  exit;
?>
于 2013-03-07T15:50:33.577 回答
2
header("Location: yourscript.php");
die();

这将重定向,但必须在回显任何内容之前使用它。

于 2013-03-07T15:51:10.993 回答
1

如果上传正常,您可以将变量(例如:$success)设置为 true,然后在页面下方添加以下内容;

<?php

if($success == true){
  echo "<script language='javascript'>\n";
  echo "alert('Upload successful!'); window.location.href='http://splash21.com';";
  echo "</script>\n";
}

?>

这将允许您处理成功和失败的上传

于 2013-03-07T16:01:06.417 回答
1

请注意,在写入输出后您无法修改标题(如echo 'uploaded';)。此外,您可能并不总是重定向(取决于脚本中的内容),除非您在使用exit;.

header('Location: http://example.com'); exit;

于 2013-03-07T15:50:18.767 回答
1

如果尚未输出任何内容,您可以代替 echo 语句:

header('Location: http://www.google.com');
die;
于 2013-03-07T15:50:41.377 回答