私はSQL/PHP/HTMLを初めて使い、現時点ではuniで学習しています。
私たちは、私たちがデータベースを更新してデータベースに追加するためのフォームを含む、私たちの選択したウェブサイトを作成するよう求められました。
これまでに見たことのない最も基本的な漫画本ライブラリを作成しました。テーブルを更新しているPHPがデータベースに影響を与えていない
これまでのところ、関連するフィールドがたくさんあるデータベースに新しいコミックを追加できる作業フォームが1つあります。別のフォームを作成して、漫画にマークを付けることができます所有者はドロップダウンリストから選択して[送信]をクリックします。
これは、ブール値を0から1に変更します。この値は、漫画ページに表示され、オーナーとしてマークされます。
私はフォームを作成できましたが、すべてが機能しているようですが、送信ボタンをクリックしてもデータベースが実際には更新されていないことを確認するメッセージが表示されます。
以下は私のPHPコードです。私が更新しようとしているテーブルがComicと呼ばれ、特定の列が所有と呼ばれていることを知るのに役立つならば、所有されているすべてのブール値はデフォルトで0に設定され、このフォームは1に更新されます。 実際のデータベースは更新されています。何を掲載するID これだったときは、漫画の名前を使用することはできません
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$content = "<h1>Mark a comic as owned</h1>";
$action = $_SERVER["PHP_SELF"]."?page=owned";
$sql0 = "SELECT Comic.name, Comic.id, Comic.owned
FROM Comic";
$result0 = mysqli_query($link, $sql0);
if($result0 === false){
echo mysqli_error($link);
} else {
$options0 = "";
while($row = mysqli_fetch_assoc($result0)){
$options0 .= "<option value='".$row['id']."'>";
$options0 .= $row['name'];
$options0 .= "</option>";
}
}
$form_html = "<form action'".$action."' method='POST'>
<fieldset>
<label for='m_own'>Comic:</label>
<select name='m_own' required>
<option value='' disabled selected>Select owned comic</option>
".$options0."
</select>
</fieldset>
<button type='submit'>Submit</button>
</form>";
$content .= $form_html;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$m_own = $_POST["m_own"];
$sql888 = "UPDATE Comic
SET owned = 1
WHERE name ='.$m_own.';";
$result888 = mysqli_query($link, $sql888);
if($result888 === false){
echo mysqli_errno($link);
} else {
$content .= "Marked";
}
}
?>
作品を願って いくつかのアポストロフィとドットが '$ strのm_own'ですINまたは整数? –
なぜ ";"あなたのクエリ文字列の更新? –
@UsmanRanaはあまり心配しません。 –