PHPで、画像ファイル(複数)のアップロードのスクリプトを作成しています。
アップロード用のフォームボタンはひとつです。1ファイルアップロードしたら、同じフォームに戻って次をアップロードして、最後に一覧表示で確認するというやり方です。
newfile.php(アップロード用のフォームボタン)
↓
newfileconf.php(アップロードファイルの表示確認)
↓
newfiledone.php(アップロードできました!のメッセージ(とアップロードファイル一覧表示用の配列取得))
買い物などで、商品を追加していくやり方などと似ているのではと思います。
セッション配列にファイル名を入れていけばできるはずだと思うのですが、最後の一覧表示用のセッション配列を取得するところ(newfiledone.php)だけがなぜだかうまくいきません。
アップロードじたいはうまくいっており、$imagefile(ファイル名)、$count も取れています。
単純ミスかもしれませんが、一晩ひっかかっています。わかる方いたら教えて下さい。
newfiledone.phpのコードは下記です。
<?php
/****************************************/
/* 写真の新規登録実行ページ */
/****************************************/
//共通データをインクルードします
require_once("photolibini.php");
session_start();
if( isset( $_SESSION[ "count" ] ) ) {
$_SESSION[ "count" ]++;
} else {
$_SESSION[ "count" ] = 1;
}
//前のページからデータを受け取る
$imagefile = $_POST[imagefile];
$cancel = $_POST[cancel];
if (isset($cancel)) {
//キャンセルボタンが押されたとき
//アップロードされた写真のファイルの実体を削除
unlink("$PHOTOTMP$imagefile");
//写真の新規登録ページへリダイレクト
header("Location: photonew.php");
exit();
}
$body = "登録を完了しました!";
//写真のファイルを一時保存先から最終保存先に移動
rename("$PHOTOTMP$imagefile", "$PHOTODIR$imagefile");
$body .= "<BR><BR>
<INPUT type='button' value='次の写真を登録' onclick='window.location=\"photonew.php\"'>
<INPUT type='button' value='ホームへ戻る' onclick='window.location=\"index.htm\"'>";
//カウンタの数字を配列に入れる
$count = $_SESSION[count];
//imagefileをセッション配列に入れる
$_SESSION['imagefile'][$count] = $imagefile;
//配列がうまくいっているかどうか試しに表示してみる
foreach ( $_SESSION['imagefile'] as $count => $value ){
echo $value."<br />\n";
}
//ページヘッダを出力します
print htmlheader("写真の新規登録実行");
//ページ本文を出力します
print $body;
//ページフッタを出力します
print htmlfooter();
?>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列をループでたくさん宣言し...
-
file_existsでファイル名の部分...
-
foreachのなかで次のキーを参照...
-
PHPで多次元配列を一度に処理す...
-
チェックボックス複数選択 mys...
-
mb_ereg_replaceについて
-
前のページで入力したものをあ...
-
プルダウンメニューでCSVデータ...
-
重複しないランダム関数を教え...
-
PHPで配列をPOSTデータで送った...
-
PHPのループ数限界値について
-
Smarty の演算方法
-
配列の書き方
-
PHPのカッコ[ ]の使い方について
-
プログラミングのPythonのnoteb...
-
スカラーのベクトル微分
-
PHPでこのコード自体に意味は無...
-
ヒアドキュメントの中のfor文
-
連想配列のキー値(連番)を基...
-
Excel VBAでフィルター後の対象...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列をループでたくさん宣言し...
-
file_existsでファイル名の部分...
-
$_SESSIONに二次元配列を使える...
-
foreachのなかで次のキーを参照...
-
String だと「 ByRef引数の型が...
-
配列を回すとき、最後の要素だ...
-
配列一致(要素順番は違うが内容...
-
PHPのカッコ[ ]の使い方について
-
ネストが深い時のforeachはどう...
-
チェックボックス複数選択 mys...
-
PHPで配列をPOSTデータで送った...
-
phpで、連想配列を普通の配列に...
-
PHP 多次元配列変数のデータ受...
-
postgresql関数をつかったレコ...
-
【PHP】配列内のある値以上をカ...
-
SQL文の実行結果を変数で受けて...
-
プルダウンメニューでCSVデータ...
-
Smartyのテンプレートからjavas...
-
PHPにてクラスを配列にすること...
-
CSVデータのn番目だけの値を取...
おすすめ情報