質問編集履歴

2

一部誤解される表現がありました

2021/09/02 07:47

投稿

bajapan
bajapan

スコア9

test CHANGED
File without changes
test CHANGED
@@ -2,17 +2,17 @@
2
2
 
3
3
 
4
4
 
5
- ```ここに言語を入力
5
+ ```HTML
6
6
 
7
7
  <?php
8
8
 
9
- $targetDir="./images"; //使いたい画像が入ったフォルダ
9
+ $targetDir="./postedimages";
10
10
 
11
11
  $imageFiles = glob($targetDir. DIRECTORY_SEPARATOR . "*.png");
12
12
 
13
13
 
14
14
 
15
- foreach($imageFiles as $i){//images内の.pngファイル数の分繰り返し
15
+ foreach($imageFiles as $i){
16
16
 
17
17
  ?>
18
18
 
@@ -20,11 +20,9 @@
20
20
 
21
21
  <?php
22
22
 
23
- printf($i); //変数は反映され、images内のファイル名が上から順に表示される
23
+ printf("<img src='%s' class='clickimg'>",$i); //ファイル名が反映される
24
24
 
25
- printf("<img src='%s' class='clickimage'>",$i); //ファイル名が反映され、画像が表示される。
25
+
26
-
27
- $x=$i;
28
26
 
29
27
  ?>
30
28
 
@@ -32,15 +30,9 @@
32
30
 
33
31
  <input type="checkbox" id="pop-up">
34
32
 
35
- <?php printf($i);//ここまで反映される?>
36
-
37
33
  <div class="overlay">
38
34
 
39
- <?php printf($i);//この値はどこにも表示されない?>
40
-
41
35
  <div class="window">
42
-
43
- <?php printf($i);//ここから反映されず全てファイルの一番上のものが表示される?>
44
36
 
45
37
  <label class="close" for="pop-up">×</label>
46
38
 
@@ -48,15 +40,7 @@
48
40
 
49
41
  <?php
50
42
 
51
- $x=$y;
52
-
53
- printf("<div><p class='text'><img src='$i' class='popimage'></p></div>"); //反映されすどの画像をクリックしてもファイルの一番上の画像がポップアップとして表示される
43
+ printf("<div><p class='text'><img src='$i' class='popimage'></p></div>"); //反映されない
54
-
55
- printf("<div>$i</div>"); //反映されない
56
-
57
- printf("<div>$x</div>"); //反映される時点で別変数$x=$iをしたが反映されない
58
-
59
- printf("<div>$y</div>"); //反映されない時点の行で$y=$iをしても同様に反映されない
60
44
 
61
45
  ?>
62
46
 
@@ -80,4 +64,124 @@
80
64
 
81
65
 
82
66
 
67
+ ```CSS
68
+
69
+ .open {
70
+
71
+ cursor: pointer;
72
+
73
+ }
74
+
75
+ #pop-up {
76
+
77
+ display: none;
78
+
79
+ }
80
+
81
+ .overlay {
82
+
83
+ display: none;
84
+
85
+ }
86
+
87
+ #pop-up:checked + .overlay {
88
+
89
+ display: block;
90
+
91
+ z-index: 9999;
92
+
93
+ background-color: #00000070;
94
+
95
+ position: fixed;
96
+
97
+ width: 100%;
98
+
99
+ height: 100vh;
100
+
101
+ top: 0;
102
+
103
+ left: 0;
104
+
105
+ }
106
+
107
+ .window {
108
+
109
+ width: 70%;
110
+
111
+ max-width: 500px;
112
+
113
+ height: 70%;
114
+
115
+ background-color: #ffffff;
116
+
117
+ border-radius: 6px;
118
+
119
+ display: flex;
120
+
121
+ justify-content: center;
122
+
123
+ align-items: center;
124
+
125
+ position: fixed;
126
+
127
+ top: 50%;
128
+
129
+ left: 50%;
130
+
131
+ transform: translate(-50%, -50%);
132
+
133
+ }
134
+
135
+ .text {
136
+
137
+ font-size: 18px;
138
+
139
+ margin: 0;
140
+
141
+ }
142
+
143
+ .close {
144
+
145
+ cursor: pointer;
146
+
147
+ position: absolute;
148
+
149
+ top: 4px;
150
+
151
+ right: 4px;
152
+
153
+ font-size: 20px;
154
+
155
+ }
156
+
157
+
158
+
159
+ .popimage {
160
+
161
+ width: 70%;
162
+
163
+
164
+
165
+ height: 70%;
166
+
167
+ }
168
+
169
+
170
+
171
+ ```
172
+
173
+
174
+
83
175
  初心者ですので初歩的なミスかもしれませんが、教えていただけると幸いです。
176
+
177
+
178
+
179
+ 追記:HMMLを実際に描きたいコードのみにして、CSSも書き出しました
180
+
181
+ 例えばimagesフォルダ内に「a.png,b.png,c.png,d.png」の順に画像ファイルがあったとして、ページ内ではa.pngからd.pngまで順に表示されるのに対し、ポップアップを見るとどの画像をクリックしてもa.pngが表示されてしまうといった状況です。
182
+
183
+ id="pop-up"が一度しか使えないのに複数回使用していることが原因でしょうか
184
+
185
+ しかしclass="pop-up"としてcss内の#pop-upも.pop-upに変更したところ、ポップアップ自体が出なくなってしまいます。
186
+
187
+ javascriptは使用していません

1

一部わかりにくい表現がありました

2021/09/02 07:47

投稿

bajapan
bajapan

スコア9

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- PHPでimagesフォルダ内の画像をforeachで繰り返し並べて、クリックすると同じ画像がポップアップするようにしたいのですが、反映されません。
1
+ PHPでimagesフォルダ内の画像をforeachで繰り返し並べて、クリックすると同じ画像がポップアップするようにしたいのですが、ポップアップとして表示される部分で変数が反映されません。
2
2
 
3
3
 
4
4