私は、フォームボタンをクリックして更新するために一度だけクリックされることを理解しようとしているphpとsqlにはかなり新しいです。プログラムは既に追加、検索、削除が正常に機能しており、これを動作させるだけです。それは更新されているようですが、再度クリックするまでは更新を出力しません。ここに私のコードは次のとおりです。PHP/MySQLの更新ボタンを2回クリックする必要がありますか?
if (isset($_POST['update']) &&
isset($_POST['name']) &&
isset($_POST['planet']) &&
isset($_POST['country']) &&
isset($_POST['population']) &&
isset($_POST['density']))
{
$name = get_post($conn, 'name');
$planet = get_post($conn, 'planet');
$country = get_post($conn, 'country');
$population = get_post($conn, 'population');
$density = get_post($conn, 'density');
$sql = "UPDATE cities SET planet = '$planet', country = '$country', population = '$population', density = $density WHERE name = '$name' ;";
$result = $conn->query($sql);
if (!$result) die ("Database access failed: " . $conn->error);
}
echo <<<_END
<pre>
name $row[0]
planet $row[1]
country $row[2]
population $row[3]
density $row[4]
</pre>
<form action="Hw05.php" method="post"><pre>
<input type="hidden" name="update" value="yes">
name <input type="text" name="name" value="$row[0]">
planet <input type="text" name="planet" value="$row[1]">
country <input type="text" name="country" value="$row[2]">
population <input type="int" name="population" value="$row[3]">
density <input type="int" name="density" value="$row[4]">
<input type="submit" value="UPDATE RECORD">
</pre></form>
_END;
私は私は、Javaの男のPHP/MySQLとよりに新しいですと述べていますようにすべてのヘルプは、いただければ幸いです。 (しかし、私はPHPが好きです)。
あなたの '$ row'はどこから来ますか?あなたはどこにでもそれを定義していませんでした。そしてあなたのコードでは、heredoc '_END'にはinfrontのスペースがあります。 heredocが終わる前にspeceがあってはならないし、ちょうどheredocを終えた後に新しい行がなければならない。 –