2016-11-16 12 views
1

別のindex.phpファイルのフォームデータに基づいてデータベースに新しいエントリを挿入するaddarticle.phpファイルを作成しました。JSON経由のMySQLi INSERTステータスを以前のWebページに戻す

私の質問は、前のページに戻るにはどうすればいいですか?json_encode($success);

私はhere記述されているものと同様のものを達成したいと考えていますが、「成功ステータス」

と私は私のindex.phpファイルにinclude('addarticle.php');を使用し、$success変数を使用することができることを知っています。

トランザクションステータスを返す別の方法はありますか?ありがとうございました!

addarticle.phpあなたが提供されたコードを見てみると

<?php 
$servername = "example.something.com"; 
$username = "edwin"; 
$password = "123456"; 
$dbname = "testdb"; 

$success; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$title = mysqli_real_escape_string($conn, $_POST['title']); 
//$title = $_POST['title']; 
$article = mysqli_real_escape_string($conn, $_POST['article']); 
$imageurl1 = $_POST['imageurl1']; 
$imageurl2 = $_POST['imageurl2']; 
$imageurl3 = $_POST['imageurl3']; 

$sql = "INSERT INTO Articles (Title, TextBody, ImageURL1,ImageURL2,ImageURL3) 
VALUES ('$title','$article','$imageurl1','$imageurl2','$imageurl3')"; 

if ($conn->query($sql) === TRUE) { 
    $success = true; 
} else { 
    $success = false; 
} 

echo json_encode($success); 

$conn->close(); 

?> 

のindex.php

<form action="addpost.php" method="post" style="left:0"> 
Title: <input name="title" type="text" /><br /> 
Article Body:<br /> <textarea cols="50" name="article" rows="4"></textarea><br /> 
Image URL1: <input name="imageurl1" type="text" /><br /> 
Image URL2: <input name="imageurl2" type="text" /><br /> 
Image URL3: <input name="imageurl3" type="text" /><br /> 
<input type="submit" value="Submit" /> 
</form> 
+0

チェック**アヤックス**とどのようにそれを実装するには、以下のようAJAXを使用してJSONレスポンスを取得します。 –

+0

ajaxを介してフォームを送信しようとします。これは良い練習です。そして、あなたはjsonの形で成功メッセージを得ることができます。 –

答えて

1

:まず、なぜあなたはブール値をjson_encodeですか?この文脈では、本当の必要はありません。これを与えれば、$ _GETリクエストを使ってブール値をどのページにも簡単に送ることができます。このよう

$url = "anypage.php?status=" + $status; 
header("Location: " + $url); 

そしてanypage.php

if(isset($_GET["status"])){ 
    $status = $_GET["status"]; // either true or false 
} 

OR、あなたはAJAXの道を行くと、それを実装することができました。

あなたはjQueryのを使用している場合: http://www.w3schools.com/jquery/ajax_ajax.asp

-1

$.ajax({ url: 'addarticle.php', 
    cache: false, 
    type: 'post' 
}).done(function(response) { 
    console.log(response); 
}); 
+2

これで問題は解決する可能性がありますが、コードに説明を追加することをお勧めします。 – BDL

+0

**フラッグ/レビューア:** [このようなコードのみの回答については、下線を削除しないでください!](// meta.stackoverflow.com/a/260413/2747593) –

関連する問題