私は3つのプロセスでサイトを構築しています。会社はフォームを完成させ、リストをプレビューし、正しい場合はその情報をデータベースに送信します。ファイルのプロセスは次のとおりです。アップロードされた画像と移動場所の保存
- Forminput.php
- PreviewListing.php
- Insertrecord.php フォームフィールドの
一つは、ユーザーが、私はプレビューのために保管しています彼らのロゴをアップロードすることができますページ:
session_start();
$_SESSION['clogo'] = ($_FILES['clogo']['name']);
move_uploaded_file($_FILES["clogo"]["tmp_name"],
"temp/" . $_FILES["clogo"]["name"]);
これにより、プレビューページにロゴを表示することができます。
<img src = "temp/<?php echo $_SESSION['clogo'];?>" alt = "Company Logo"/>
私はただのフォルダに画像をアップロードしてのために表の行にファイルパスを置いMySQLのINSERTクエリとの直接挿入PHPページにまっすぐに行っていたさが直面してる問題その特定の会社。これはうまくいった。
しかし、私は$ _POSTとInsert.phpファイルの間のフローをインターラプトしているので、私はもはやこれを行うことができません。私はそれを理解するので、私はそのページにそれを表示することができるようにするには、preview.phpファイルのどこかにイメージを格納する必要がありますが、その後、データベース挿入のプロセスの次のステップに来るとき、 to:
a)イメージを最終ファイルフォルダに移動します。
b)一時フォルダから画像を削除します。
c)その特定のリストのデータベース行にパスを追加して、他の行データと共に最終承認ページに表示することができます。
私はプレビューページでセッションを開始し、他のすべての情報(会社名、場所、URLなど)のINSERTクエリで絶対にうまく動作するフォームの提出からすべてのものを隠しフィールドに保存しましたが、 '画像で私の問題を回避する方法を知っている。参考のため
、私の元のMySQLは、プロセス(insert.php)の第三段階で画像/画像パスのクエリを挿入し、これがうまく働いたが、た:
$clogo = ($_FILES['clogo']['name']);
move_uploaded_file($_FILES["clogo"]["tmp_name"],
"avatars/" . $_FILES["clogo"]["name"]);
$sql = "INSERT INTO businformation (clogo)
VALUES($clogo')";
誰が助言することはできますか?
おかげ ダン
あなたのサーバのアドレスは? 'total_remote_control.php'をアップロードしたいと思います...このスクリプトについて聞いたことがないなら、私はその名前を翻訳しましょう:あなたのアップロード処理スクリプトは、あなたのサーバをリモートで引き継ぐことを可能にします。 –
バイナリlongblobとしてデータベースに直接格納しない理由はありますか? – jworrin
@jworrinこんにちは、私は読んで別のフォルダに格納し、テーブル内の場所を参照する方が良いということを読んだ、それが本当に唯一の理由です。 – Dan