- 締切済み
PHPを使って、1ページ内で新規レコードと画像アップロードしたいのですが・・・
PHP4、MySQL4初心者です。 今回、会員名簿のDBをつくり、PHPを使って、管理者が新規会員(レコード)を登録できるようにプログラミングしています。 フィールドは、「ID」「名前」「住所」「コメント」等の数字や文字データばかりでしたが、今回会員の写真(jpg)データも新規会員登録画面で一緒に登録できるようにして欲しいと要望があり、色々調べておりますが四苦八苦しております・・・ 基本的な構造としましては・・・ HTMLファイルにformタグを使って、入力してもらったデータをpostで飛ばして、別ファイル(php)でsql文を書いて、insertしている形です。 その際に一緒に画像も、sbumitする際に所定のフォルダにアップロードして、そのファイル名をimg_id.jpg みたいな形で接頭語とidをくっつけて、作成して、その画像ファイル名をさらに、DBのフィールド”img_name”に登録したいのです。 画像はBLOBでDBにアップではなく、あくまでFTPで後で入って処理しやすいように、public以下のフォルダ内に特定のフォルダを作成してそこにアップしたいと思います。 1ページ以内で処理するということで、かなり困っていますが、いい方法はないでしょうか・・・? みなさん! どうかお知恵をお貸しくださいませ!! ちなみに現在できている登録のコードはこちらです。 -------------(HTML)------------------------------------- <html> <body> <h2>新規会員登録</h2> <form action="insert.php" method="post"> ■会員名 :<input type="text" name="input_name" /><br> ■住 所 :<input type="text" name="input_addr" /><br> ■コメント:<input type="text" name="input_comm" /><br> <input type="submit" value="-- 登録する --" /> </form> </body> </html> -------------(HTML)------------------------------------- -------------(PHP:insert.php)-------------------------- <? $db = mysql_connect("localhost","ユーザー名","パスワード"); mysql_select_db("データベース名"); $query = "set NAMES euc"; $result = mysql_query($query); // ここで、HTMLフォームの中のinputタグに対応したデータを取得 $name= $_POST["input_name"]; $addr= $_POST["input_addr"]; $comm= $_POST["input_comm"]; $query = "insert into テーブル名(name,addr,comm) values ('$name','$addr','$comm')"; $result = mysql_query($query); mysql_close($db); ?> <html> </head> <body> <h2>新規会員登録</h2> <p>データ登録完了</p> </body> </html> -------------(PHP)-------------------------------------- phpで画像をアップロードするときは formの中に ”enctype=\"multipart/form-data”を入れたり、 ”move_uploaded_file”を使ったりと、断片的には知識はありますが、 体系的に理解できません・・・ どなたか、アドバイス頂けましたら幸いです。 あるいは、解説してあるサイトや、フリーのサンプルスクリプト等教えて頂けましたら助かります・・! どうぞ、どうぞよろしくお願い致します!!
- みんなの回答 (2)
- 専門家の回答
お礼
すみません・・・たしかにPHPの項目ですね・・( ̄□ ̄|||) とても参考になりました。