2016-11-02 30 views
-1

私はmysqliクエリを持っています。クエリが正常に実行されたら、私はURLに行きたい、そうでなければ別のURLにリダイレクトされます。PHPヘッダーの位置が正しく動作しない

問題は、ヘッダーloacationが機能していないと私はなぜそうでないのか分からないということです。ここで

コードです:

<!-- ADD --> 

<?php 

if(isset($_POST['add_category'])) 
{ 

// Set a variable to each form input name 
$category = $conn->real_escape_string($_POST['category']); 
// Pass variables to database table 


    if (mysqli_query($conn, "INSERT INTO categories(category_name) VALUES('$category')")) { 
     header("Location: admin.php?menu=1&alert=1"); 

    } else { 
     header("Location: admin.php?menu=1&alert=2"); 
    } 
} 

?> 

<!-- DEL --> 
<?php 

if(isset($_GET['del'])) 
{  
$id = $_GET['del']; 

if (mysqli_query($conn, "DELETE FROM categories WHERE id='$id'")) { 

    header("Location: admin.php?menu=1&alert=3"); 

} 

} 
?> 

<!-- UPDATE --> 

私はエコー文字列の最初のヘッダの場所をreplaceing試してみましたが、これは、クエリが正しく実行される、問題は、ヘッダーの場所でなければなりません示す出力します。ありがとうございました

+4

'error_reporting(E_ALL);ini_set( 'display_errors'、 '1'); '次に:http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php – AbraCadaver

+0

あなたはそこにいることを確認していますか? [画面には絶対出力されません](http://stackoverflow.com/a/8028987/1028804)? –

+2

@ Memor-X:いいえ、あなたは ''と改行を見ることができます。 – AbraCadaver

答えて

0

<?php?>タグの外側の空白です。

ヘッダー()の前に空白文字を削除し、後die()を置く任意の実際の出力が送信される前に呼び出され、いずれかの

、またはPHP

からファイルに 通常のHTMLタグ、空行でなければなりません header()コール

+2

と ' ' – AbraCadaver

+0

@AbraCadaverの回答リンクを得ると思った。それはコメントだったので、脳は怒った – Jaime

関連する問題