私はPHPで新しく、単純な入力フォームのWebページをやっています。問題は、提出ウェブサイトが空白のページに移動した後、元のページに戻ることです。私は私のコードにheader()を追加することで助けになるかもしれないとここで読んだが、それは助けにはならない。ここに私のコードは次のとおりです。PHPを使用してフォームを送信した後、ページに戻る方法
<?php
$name = $_POST["name"];
$lnk = $_POST["img"];
$dsc = $_POST["dsc"];
$servername = 'localhost';
$username = 'root';
$password = '';
$database = 'cero_db';
$conn = new mysqli($servername, $username, $password,$database);
$sql = "INSERT INTO pg (Name, Link, Description)
VALUES ('".$name."', '".$lnk."', '".$dsc."')";
$conn->query($sql);
?>
任意の提案:
<!DOCTYPE html>
<html>
<head>
<title> Sample Form </title>
<link href = "stl.css" rel = "stylesheet" type="text/css" />
</head>
<body>
<form method="post" action="connect.php">
<input class = "PaganForm" id = "name" type="text" name="name" value="">
<input class = "PaganForm" id = "img" type="text" name="img" value="">
<input class = "PaganForm" id = "dsc" type="text" name="dsc" value="">
<input type="submit" id = "SubmitButton" >
</form>
<?php
header("Location: http://localhost/simple-form.php");
exit;
$servername = 'localhost';
$username = 'root';
$password = '';
$database = 'cero_db';
$conn = new mysqli($servername, $username, $password,$database);
$sql = "SELECT * FROM pg";
$result = $conn->query($sql);
while($row = $result->fetch_assoc()) {
$newName = $row['Name'];
$newLink = $row['Link'];
$newDsc = $row['Description'];
echo "<h1>".$newName."</h1>";
echo "<img src = \"".$newLink."\" />";
echo "<p>".$newDsc."</p>";
}
?>
<body>
</html>
ここconnect.phpはありますか?
P.S.私はこれが重複している場合、元のリンクのみと私はこれを削除しますので、私を助けたすべての質問を見つけることができませんでした。
'Header()'に__after__提出コードを追加する必要があります。 –
問題は、あなたのheader()関数がhtmlの後にあることです。あなたは何かを出力した後、ヘッダーを使用することはできません。ヘッダーを一番上に置くか、出力バッファリングを使用する方法を見つける必要があります。これは広範に議論されています。 –
すべてのデータが送信される前にヘッダーが送信される必要があり、ヘッダー機能の前にOPにhtmlコードが送信されるため、まだ動作しません。 – elementzero23