2012-04-17 7 views
0

これは私を狂ってしまいます。それは単純なエラーのように思えます - 私は彼らのスクリプトについての投稿の数十が私のところより複雑であることを見てきました。最小限のスクリプト - まだ取得中ヘッダー情報を変更できません - 既に送信されたヘッダー

私はヘッダーを設定してダウンロードを強制するPHPスクリプトを持っています。私はこれまでスクリプトをスリム化しました:

<?php 
header("Content-Type: audio/mp3"); 
header("Content-Disposition: attachment; filename=\"audio.mp3\";"); 
readfile("audio.mp3"); 
exit(); 
?> 

なぜ私のヘッダーが送信されますか?私はobj_startとobj_flushを試しましたが、これまでのところ運がありません。これは私のホストに問題がありますか?私は1and1.comを使用しています

+1

スクリプトの最初または最後にスペースを入れていませんか?改行? –

+0

あなたのスクリプトは私のdevサーバでテストしたときに問題なく動作するようですので、コードに何も問題はありません。 @WaynnLueが示すようにスペースを確認してください。 '?>'は不要なので削除することもできますし、時には空白を挿入することもできます。 – F21

+0

ええ、スペースはありません!隠れた新しい行がある可能性はありますか?私はVisual Studioのウィンドウで編集しています。 – Slider345

答えて

2

あなたのスクリプトは正常に動作します。スクリプトの最初または最後には空白がないことを確認してください。

+0

私のエディタであるVisual Studioは、スクリプトの前に目に見えないバイトを追加していたようです。 – Slider345

+0

ありがとうございました。<?phpタグの先頭から空白を削除しました。うまくいきました。 –

関連する問題