MySQLのテーブルにデータを入力するだけのHTMLとPHPフォームを作成しました。
私はファイルアップロードフィールドを持っていますが、ファイルはアップロードしていません。私はそれがサーバーに何かをアップロードすることを望んでいない、私はそれが選択されたファイルの場所をつかんで、データベースに入力することです。
Internet Explorerでは完全に正常に動作しますが、他のブラウザでは動作しません。それは、セキュリティ上の問題が原因です。
私の入力コード:ファイルの完全な場所を取得するための 'アップロード'フォーム?
<input type="file" id="filename" name="filename" />
とフォームが送信されたときに、もちろん、いくつかのPHPコードは、データベースにデータを挿入することによって実行されます。そのフィールドの値を別のフィールドにコピーするためにJavaScriptを試しましたが、動作しないセキュリティの問題が原因です。
JavaScriptでこれを行う方法を知っている人はいますか?またはフラッシュ?正直言って、これらに似たものがあれば、IE以外のブラウザーでも動作するものです。
ありがとうございました。
EDIT -
はここに私のコードです:それはデータベースに選択し、入力、そのファイルの場所をつかむためにため
<?php
if (isset($_POST['submit'])) {
$name = addslashes(htmlentities($_POST['name']));
$filename = addslashes(htmlentities($_POST['filename']));
if (@mysql_query("INSERT INTO movies SET
name='$name',
doc_filename='$filename'")) {
echo '<p>Movie added.</p><p><a href=movies.php">Manage movies</a>.</p>';
} else {
echo '<strong>Error:</strong> '.mysql_error().'';
}
} else {
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="newspost" enctype="multipart/form-data">
<div class="form-row">
<label for="fm_title">Movie file path: </label><br />
<input type="file" id="filename" name="filename" />
</div><br />
<div class="form-row">
<label for="fm_title">Movie name: </label><br />
<input type="text" class="input-width" name="name" value="<?php if (!empty($_POST['name'])) { echo $_POST['name']; } ?>" />
</div>
<div class="form-row">
<input type="submit" name="submit" value="Submit" />
</div>
</form>
<?php
}
?>
として
を与えることを想定方法をIEにはJavaScriptがありませんIE – ajreal
のために働くJavaScriptを含めてください。 IEはうまくいくようです。私は "ファイル名"フィールドの完全な値を入力し、完全な位置をそれ自身のファイルに挿入します。 –
その後、HTMLフォームとPHPコードを表示してください! – ajreal