![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
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ランキング
-
$_SESSIONに二次元配列を使える...
-
配列一致(要素順番は違うが内容...
-
file_existsでファイル名の部分...
-
テーブルの行と列の入れ替えは可?
-
PHPのカッコ[ ]の使い方について
-
foreachのなかで次のキーを参照...
-
配列の値の更新方法について
-
PHPにてクラスを配列にすること...
-
htmlソースからアンカータグ内...
-
String だと「 ByRef引数の型が...
-
禁止ワード設定
-
プルダウンメニューにDBの内容...
-
配列内の値を分解して再格納
-
行数が30万件ほどあるCSVから、...
-
特定の文からメールアドレスの...
-
FortranのOPEN文
-
別ファイルの構造体の値を読み...
-
C言語でCSVファイルの行数を読...
-
Pager::factory()の使い方がわ...
-
C言語 最大値と最小値を求めて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
file_existsでファイル名の部分...
-
配列をループでたくさん宣言し...
-
foreachのなかで次のキーを参照...
-
String だと「 ByRef引数の型が...
-
PHPのカッコ[ ]の使い方について
-
配列を回すとき、最後の要素だ...
-
配列一致(要素順番は違うが内容...
-
チェックボックス複数選択 mys...
-
漢字のソートについて
-
postgresql関数をつかったレコ...
-
ネストが深い時のforeachはどう...
-
URLのサブドメインとドメイン部...
-
OCI で、SELECT結果行数を取得...
-
【Smarty】foreach関数やsectio...
-
$_POSTを一括してサニタイズし...
-
phpで、連想配列を普通の配列に...
-
チェックボックスが複数選択で...
-
連想配列のprint_rやvar_dump出...
-
PHP 配列の添字に変数は使えない?
おすすめ情報