自宅のコンピューターから離れることのない Web サイトの 2 つのページを介して、フォームを使用して、同じくコンピューターでホストされている MySQL データベースに項目を入力したいと考えています。以前にほぼ同じものでこれを行ったことがありますが、何らかの理由でこれは機能しません。自分のコンピューターから離れることはないので、これやそのようなもののセキュリティについては心配していません。実際に機能することを望んでいます。
形:
<form action='addclothes.php' method='post'><table style="font-family:verdana;font-size:14px;color:#004766;"><tr><td>
Type of clothing:</td><td><select name="type">
<option value="0">---</option>
<option value="dresses">Dress</option>
<option value="tops">Top</option>
<option value="bottoms">Bottom</option>
<option value="shoes">Shoes</option>
<option value="accessories">Accessory</option></select></td></tr>
<tr><td>Name:</td><td><input type="text" name="name"></td></tr>
<tr><td>Path to full image:</td><td><input type="text" name="largeimagepath"></td></tr>
<tr><td>Path to thumbnail:</td><td><input type="text" name="smallimagepath"></td></tr>
<tr><td colspan="2"><center><input type="submit" value="Submit" name="submit"></center></td></tr>
</table></form>
これは addclothes.php に送信され、同じレイアウトを維持するために html で囲まれた次のようになります。
<?php
$name = $_POST['name'];
$table = $_POST['type'];
$largepath = $_POST['largeimagepath'];
$thumbpath = $_POST['smallimagepath'];
$db = mysql_connect("localhost", "root", "******") or die(mysql_error());
mysql_select_db("Default") or die(mysql_error());
$query = "INSERT INTO clothes."{$table}" (name, imagepath, thumbimagepath)
VALUES("{$name}", "{$largepath}", "{$thumbpath}")";
mysql_query($query) or die(mysql_error()); ?>
<p>Item Added!</p>
次のページに来て、何をしても「アイテムが追加されました」とだけ表示されます。変数を作成した直後にクエリをエコーしようとすると、どちらも表示されません。