私はPHPファイルを実行し、データベースにイメージとテキストをアップロードするhtmlでフォームを作成しています。私のhtmlはPHPに完全に向いていますが、アップロードプロセスは動作していません。 phpファイルが動作していないことを示します。イメージをデータベースにアップロードする
私のHTMLコード:
<form name="f1" method="post" action="php/Savent.php"
enctype="application/x-www-form-urlencoded">
<fieldset>
<legend name = "addev" align="right"><b>Detail</b></legend>
<table width="100%">
<tr align="center">
<th>Choose Image : </th>
<td><input type="file" name="image"/></td>
</tr>
<tr>
<td colspan="2"><br/></td>
</tr>
<tr align="center">
<th>Description : </th>
<td><textarea name="desc" rows="6" cols="30" style="resize:
none"></textarea></td>
</tr>
<tr>
<td colspan="2"><br/></td>
</tr>
<tr align="center">
<td colspan="2" align="center"><input name="submit"
type="submit" value="Submit"/> <input type="reset"
value="Reset"/></td>
</tr>
<tr>
<td colspan="2"><br/></td>
</tr>
</table>
PHPのコード:
<?php
if(isset($_POST["submit"])){
mysqli_connect("sql303.unaux.com","unaux_20153623","testin");
mysqli_select_db("unaux_20153623_dummy");
$imageName = mysqli_real_escape_string($_FILES["image"]["name"]);
$imageData =
mysqli_real_escape_string(file_get_contents($_FILES["image"]
["tmp_name"]));
$imageType = mysqli_real_escape_string($_FILES["image"]["type"]);
$desc = mysqli_real_escape_string($_POST["desc"]);
if (substr($imageType,0,5) == "image"){
echo "Working";
mysqli_query("INSERT INTO 'events'
VALUES('','$imageName','$imageData','$desc')");
echo "Saved Succesfully";
}
else{
echo "Not Working";
}
}
?>
を使用しています間違ったenctypeを使用しています。 https://stackoverflow.com/questions/4526273/what-does-enctype-multipart-form-data-mean –
また、クエリを実行するときに接続変数を渡す必要があります。 – Akintunde007
また、insert文では、テーブル名の前後にシングルクォートを使用する必要があります。イベントテーブルに4列しかないことを確認してください – Akintunde007