That's not really an advanced topic, but the sample will be a bit hard to read (as it takes many files), so let's say it targets more experienced Symfony users.
In this demo, we're displaying a MyArray of MyElements, both persisted into the database. The MyArray entity only have an id and a name, and MyElement has id, MyArray's id and a value. This is quite the same as we seen in all demos, but persisted.
Name | Open | Delete |
---|---|---|
xv | Open | Delete |
___ â Cela fonctionne à | Open | Delete |
___ â Cela fonctionne â | Open | Delete |
___ â Cela fonctionne Ã34н34н | Open | Delete |
___ Array with Elements ... Click Open to test loading | Open | Delete |
___ ☘ Cela fonctionne ☘ | Open | Delete |
____ | Open | Delete |
_____ | Open | Delete |
__________________________________________ | Open | Delete |
_________AAAAAAAAAAAAA_______ | Open | Delete |
___array___ | Open | Delete |
_a_ | Open | Delete |
_a_firra | Open | Delete |
--- | Open | Delete |
---#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
---#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
!! | Open | Delete |
? | Open | Delete |
' | Open | Delete |
'rtrt | Open | Delete |
() | Open | Delete |
(SELECT (CASE WHEN (3158=3158) THEN 'kjh' ELSE (SELECT 1437 UNION SELECT 2166) END)) | Open | Delete |
(SELECT (CASE WHEN (4626=9556) THEN 'kjh' ELSE (SELECT 9556 UNION SELECT 9237) END)) | Open | Delete |
(SELECT (CASE WHEN (9680=8265) THEN 'kjh' ELSE (SELECT 8265 UNION SELECT 7356) END)) | Open | Delete |
@12 | Open | Delete |
&&&&&&&&&&& | Open | Delete |
#456 | Open | Delete |
#91 | Open | Delete |
#AlgoSucks | Open | Delete |
%231 | Open | Delete |
%2372 | Open | Delete |
%237233333 | Open | Delete |
%2391 | Open | Delete |
%25237233333#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
%25237233333#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
%25237233333#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
%25237233333#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
%25237233333#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
%25237233333#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
%252372uuuu | Open | Delete |
%252372uuuu#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
%252372uuuu#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
%252372uuuu#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
%252372uuuu#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
%252391 | Open | Delete |
%253F | Open | Delete |
%253F#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
%253F#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
%253F#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
%2E | Open | Delete |
%3F | Open | Delete |
< | Open | Delete |
<script>alert('test')</script> | Open | Delete |
<script>alert('test')</script>%n%n%n%n%n%n | Open | Delete |
<script>alert('test')</script>%n%n%n%n%n%n<script>alert('test')</script>%n%n%n%n%n%n<script>alert('test')</script>%n%n%n%n%n%n<script>alert('test')</script>%n%n%n%n%n%n<script>alert('test')</script>%n%n%n%n%n%n<script>alert('test')</script>%n%n%n%n%n%n<sc | Open | Delete |
<sdsads | Open | Delete |
00000 | Open | Delete |
000tom | Open | Delete |
01233 | Open | Delete |
1 | Open | Delete |
10 | Open | Delete |
11#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
11#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
11#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
11#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
11#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
1111#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
1111#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
1111#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
1111#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
11111 | Open | Delete |
11111111111111 | Open | Delete |
1111111111111111111111111111111111#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
1111111111111111111111111111111111#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
1111111111111111111111111111111111#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
1111111111111111111111111111111111#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
1111111111111111111111111111111111#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
1111111111111111111111111111111111#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
11111111aaa | Open | Delete |
1121 | Open | Delete |
12 | Open | Delete |
121113 | Open | Delete |
123 | Open | Delete |
1241 | Open | Delete |
15 | Open | Delete |
1aa | Open | Delete |
222 | Open | Delete |
2222 example | Open | Delete |
2222%20example | Open | Delete |
2222%2520example | Open | Delete |
222222 | Open | Delete |
2232323 | Open | Delete |
2344234 | Open | Delete |
3 | Open | Delete |
32 | Open | Delete |
32jnni | Open | Delete |
4545 | Open | Delete |
5 | Open | Delete |
5454 | Open | Delete |
86787 | Open | Delete |
888 | Open | Delete |
8888 | Open | Delete |
99 | Open | Delete |
993223r23 | Open | Delete |
a | Open | Delete |
â Cela fonctionne â | Open | Delete |
a Lorenz | Open | Delete |
A1 | Open | Delete |
a2 | Open | Delete |
aa | Open | Delete |
ñsfkjaldsa | Open | Delete |
aaa | Open | Delete |
aaaa | Open | Delete |
ÃÂñlkjlkj | Open | Delete |
aaaaa | Open | Delete |
aaaaaaa | Open | Delete |
aaaaaaaaaaaaaa22 | Open | Delete |
ÃÂõÃÂà| Open | Delete |
aaamine22222#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
aaamine22222#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
aaamine22222#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
aaamine22222#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
aasdasd | Open | Delete |
Abc1 | Open | Delete |
ad | Open | Delete |
adfadf | Open | Delete |
adfadf'A=0 | Open | Delete |
adsfdsf | Open | Delete |
aee | Open | Delete |
Array | Open | Delete |
array new | Open | Delete |
array1 | Open | Delete |
array2 | Open | Delete |
as | Open | Delete |
asas | Open | Delete |
asd asd asd | Open | Delete |
asda | Open | Delete |
asdaexample | Open | Delete |
asdasd#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
asdasd#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
asdasd#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
asdasdadasd#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
asdasdadasd#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
asdasdadasd#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
asdasdadasd#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
asdasdasd | Open | Delete |
asdfg | Open | Delete |
az | Open | Delete |
Aze | Open | Delete |
azerty'A=0 | Open | Delete |
balala | Open | Delete |
bam | Open | Delete |
bbbbbbbbbbb | Open | Delete |
bc | Open | Delete |
bcvbcvb | Open | Delete |
bdfdfdfdf | Open | Delete |
bite | Open | Delete |
bjfhj | Open | Delete |
bjfhj#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
bjfhj#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
bjfhj#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
bjfhj#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
bjfhj#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
bla | Open | Delete |
blah#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
blah#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
blah#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
blah#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
blah#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
blah#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
Bra | Open | Delete |
caca | Open | Delete |
caracas | Open | Delete |
cela | Open | Delete |
Cela fonctionne | Open | Delete |
Cela fonctionne pas | Open | Delete |
checks | Open | Delete |
ciao | Open | Delete |
Cmucik | Open | Delete |
crap | Open | Delete |
cups | Open | Delete |
cvSDFSD | Open | Delete |
cx | Open | Delete |
cx<wc | Open | Delete |
cxcxx | Open | Delete |
D | Open | Delete |
D#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
D#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
D#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
D#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
D#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
D#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
dadd | Open | Delete |
dasd | Open | Delete |
dasf | Open | Delete |
dd | Open | Delete |
dddd | Open | Delete |
ddddd | Open | Delete |
dddddddddddddddddddddd | Open | Delete |
delete_empty | Open | Delete |
Demo | Open | Delete |
dfa | Open | Delete |
dfa#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
dfa#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
dfa#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
dfa#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
dfdfdf | Open | Delete |
dfdsf | Open | Delete |
dfg | Open | Delete |
dfgdfg | Open | Delete |
dfsdf | Open | Delete |
dftydfty | Open | Delete |
dfvds | Open | Delete |
Doom | Open | Delete |
dra | Open | Delete |
drgd | Open | Delete |
dsd | Open | Delete |
dsfdsfd | Open | Delete |
dsfsdfs | Open | Delete |
dsvfdsfg] | Open | Delete |
dsvfdsfg%5D | Open | Delete |
e | Open | Delete |
eaze | Open | Delete |
ee | Open | Delete |
ejemplo 2017-11-23 | Open | Delete |
er | Open | Delete |
erwgfuñgj8hlñ | Open | Delete |
ewe | Open | Delete |
exadasdas | Open | Delete |
example | Delete | |
example%20exam | Open | Delete |
example+exam | Open | Delete |
example123#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
example123#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
example123#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
example123#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
example123#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
example2 | Open | Delete |
example2222222 | Open | Delete |
example22222222222222 | Open | Delete |
example33333 | Open | Delete |
example4 | Open | Delete |
exampleasd | Open | Delete |
exampleasdas | Open | Delete |
exampleasfsafasf#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
exampleasfsafasf#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
exampleasfsafasf#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
exampleasfsafasf#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
exampleasfsafasf#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
exampleaz | Open | Delete |
exampledds | Open | Delete |
examplee | Open | Delete |
exampleeeeeeeeeeeee | Open | Delete |
examplefffffffffffff | Open | Delete |
examplefsd | Open | Delete |
examplehjkhjk | Open | Delete |
examplejjj | Open | Delete |
exampleqqqq | Open | Delete |
examplesa | Open | Delete |
examplesa;fs;af;sfsf | Open | Delete |
examplesafsaf;sfsf | Open | Delete |
examplesafsafsfsf | Open | Delete |
examplesdddd | Open | Delete |
examplesdf | Open | Delete |
exampletest_11 | Open | Delete |
exampletestsf sdf sd sd | Open | Delete |
exampleuy | Open | Delete |
examplevbnvnhv | Open | Delete |
exkiample | Open | Delete |
fat | Open | Delete |
fc | Open | Delete |
fdasfdaF | Open | Delete |
fdf | Open | Delete |
fdf#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
fdf#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
fdf#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
fdf#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
fdf#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
fdgdf | Open | Delete |
fdsdf | Open | Delete |
fdsf | Open | Delete |
ff d | Open | Delete |
fff | Open | Delete |
ffsss | Open | Delete |
fgdfg | Open | Delete |
fgdfgfg | Open | Delete |
fgfdg | Open | Delete |
fgfdgfdgdg | Open | Delete |
firrra | Open | Delete |
fr | Open | Delete |
fsgv | Open | Delete |
fuck%20you | Open | Delete |
gbfgbf | Open | Delete |
gdfg | Open | Delete |
gdfg#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
gdfg#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
gdfg#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
gfgddgfd | Open | Delete |
gg | Open | Delete |
gg'A=0 | Open | Delete |
Ggg | Open | Delete |
ghjk | Open | Delete |
ghjk#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
ghjk#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
ghjk#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
ghjk#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
ghjk#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
ghjk#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
ghjk#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
ghk | Open | Delete |
Group%20B | Open | Delete |
Group%2BC | Open | Delete |
Group%2BC#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
Group%2BC#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
Group%2BC#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
gufc fucvuy | Open | Delete |
gufc fucvuy dd | Open | Delete |
hahah | Open | Delete |
hb | Open | Delete |
hello | Open | Delete |
Hello World | Open | Delete |
Hello World ! | Open | Delete |
heof | Open | Delete |
HEYY%2520:D#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
HEYY%2520:D#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
HEYY%2520:D#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
hg | Open | Delete |
hghgh | Open | Delete |
hgjgjh | Open | Delete |
hgkjh | Open | Delete |
hh | Open | Delete |
hhh | Open | Delete |
hhmm | Open | Delete |
hi | Open | Delete |
hi bitches | Open | Delete |
hi%20bitches | Open | Delete |
hjh | Open | Delete |
hjvhj | Open | Delete |
htt | Open | Delete |
hu | Open | Delete |
iii | Open | Delete |
iooi | Open | Delete |
ismail | Open | Delete |
itemList2 | Open | Delete |
iujjj | Open | Delete |
iziokisio | Open | Delete |
jbnn | Open | Delete |
jhgfgh | Open | Delete |
jhj | Open | Delete |
jj | Open | Delete |
jkjk | Open | Delete |
jose | Open | Delete |
jtujjk | Open | Delete |
julio | Open | Delete |
kaas | Open | Delete |
kappa | Open | Delete |
kfhk | Open | Delete |
khj | Open | Delete |
khj#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
khj#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
khj#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
kiki | Open | Delete |
kjh | Open | Delete |
kjh AND 2935=5884-- JseU | Open | Delete |
kjh AND 6275=3623-- Gjwd | Open | Delete |
kjh AND 6285=CAST((CHR(113)||CHR(106)||CHR(106)||CHR(118)||CHR(113))||(SELECT (CASE WHEN (6285=6285) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(113)||CHR(122)||CHR(120)||CHR(113)) AS NUMERIC) | Open | Delete |
kjh AND 7390 IN (SELECT (CHAR(113)+CHAR(106)+CHAR(106)+CHAR(118)+CHAR(113)+(SELECT (CASE WHEN (7390=7390) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(113)+CHAR(122)+CHAR(120)+CHAR(113))) | Open | Delete |
kjh AND 8611=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(106)||CHR(106)||CHR(118)||CHR(113)||(SELECT (CASE WHEN (8611=8611) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(113)||CHR(122)||CHR(120)||CHR(113)||CHR(62))) FROM DUAL)-- iQEG | Open | Delete |
kjh AND 9667 IN (SELECT (CHAR(113)+CHAR(122)+CHAR(107)+CHAR(120)+CHAR(113)+(SELECT (CASE WHEN (9667=9667) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(106)+CHAR(107)+CHAR(122)+CHAR(113))) | Open | Delete |
kjh AND EXTRACTVALUE(7241,CONCAT(0x5c,0x717a6b7871,(SELECT (ELT(7241=7241,1))),0x716a6b7a71)) | Open | Delete |
kjh AND EXTRACTVALUE(7241,CONCAT(0x5c,0x717a6b7871,(SELECT (ELT(7241=7241,1))),0x716a6b7a71))-- fAHu | Open | Delete |
kjh ORDER BY 1-- PNBN | Open | Delete |
kjh ORDER BY 1-- pvJb | Open | Delete |
kjh ORDER BY 1-- rvnA | Open | Delete |
kjh' AND 1967=4628 AND 'WfvI'='WfvI | Open | Delete |
kjh' AND 2561=2906 AND 'dQSK'='dQSK | Open | Delete |
kjh' AND 8611=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(106)||CHR(106)||CHR(118)||CHR(113)||(SELECT (CASE WHEN (8611=8611) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(113)||CHR(122)||CHR(120)||CHR(113)||CHR(62))) FROM DUAL) AND 'QXBI'='QXBI | Open | Delete |
kjh' AND EXTRACTVALUE(5914,CONCAT(0x5c,0x716a6a7671,(SELECT (ELT(5914=5914,1))),0x71717a7871)) AND 'GCxm'='GCxm | Open | Delete |
kjh' AND EXTRACTVALUE(7241,CONCAT(0x5c,0x717a6b7871,(SELECT (ELT(7241=7241,1))),0x716a6b7a71)) AND 'NwvR'='NwvR | Open | Delete |
kjh' ORDER BY 1-- Aifn | Open | Delete |
kjh' ORDER BY 1-- iPvV | Open | Delete |
kjh') AND 2750=5826 AND ('NRcI'='NRcI | Open | Delete |
kjh') AND 6285=CAST((CHR(113)||CHR(106)||CHR(106)||CHR(118)||CHR(113))||(SELECT (CASE WHEN (6285=6285) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(113)||CHR(122)||CHR(120)||CHR(113)) AS NUMERIC) AND ('bnAs'='bnAs | Open | Delete |
kjh') AND 7954=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(122)||CHR(107)||CHR(120)||CHR(113)||(SELECT (CASE WHEN (7954=7954) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(106)||CHR(107)||CHR(122)||CHR(113)||CHR(62))) FROM DUAL) AND ('cHjZ'='cHjZ | Open | Delete |
kjh') AND 8864=CAST((CHR(113)||CHR(122)||CHR(107)||CHR(120)||CHR(113))||(SELECT (CASE WHEN (8864=8864) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(106)||CHR(107)||CHR(122)||CHR(113)) AS NUMERIC) AND ('YITY'='YITY | Open | Delete |
kjh') ORDER BY 1-- IuaH | Open | Delete |
kjh) AND 1607=1768 AND (8263=8263 | Open | Delete |
kjh) AND 2060=2060 AND (3370=3370 | Open | Delete |
kjh) AND 3185=2112 AND (3791=3791 | Open | Delete |
kjh) AND 3637=2334 AND (3292=3292 | Open | Delete |
kjh) AND 6285=CAST((CHR(113)||CHR(106)||CHR(106)||CHR(118)||CHR(113))||(SELECT (CASE WHEN (6285=6285) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(113)||CHR(122)||CHR(120)||CHR(113)) AS NUMERIC) AND (7094=7094 | Open | Delete |
kjh) AND 7954=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(122)||CHR(107)||CHR(120)||CHR(113)||(SELECT (CASE WHEN (7954=7954) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(106)||CHR(107)||CHR(122)||CHR(113)||CHR(62))) FROM DUAL) AND (2635=2635 | Open | Delete |
kjh) AND EXTRACTVALUE(7241,CONCAT(0x5c,0x717a6b7871,(SELECT (ELT(7241=7241,1))),0x716a6b7a71)) AND (6110=6110 | Open | Delete |
kjkjkj | Open | Delete |
kjkk | Open | Delete |
kk | Open | Delete |
kkk | Open | Delete |
kkk#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
kkk#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
kkk#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
kkk#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
kkk#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
kljlk | Open | Delete |
klklklkl | Open | Delete |
kln | Open | Delete |
kmkm | Open | Delete |
kpok | Open | Delete |
kpok´p | Open | Delete |
kpok´p | Open | Delete |
kpokôp | Open | Delete |
l | Open | Delete |
lkjlkj | Open | Delete |
lkk | Open | Delete |
ll | Open | Delete |
lolo | Open | Delete |
Lorenz du stinker | Open | Delete |
loslos | Open | Delete |
Marcin | Open | Delete |
mec | Open | Delete |
medicion 2 | Open | Delete |
miTest | Open | Delete |
mkmkmk | Open | Delete |
mm | Open | Delete |
moj | Open | Delete |
mon tableau | Open | Delete |
mon%20exemple | Open | Delete |
mon%20tableau | Open | Delete |
mp | Open | Delete |
mt | Open | Delete |
Mumbojumbo | Open | Delete |
n | Open | Delete |
name | Open | Delete |
Names | Open | Delete |
new test | Open | Delete |
new_22 | Open | Delete |
New_test_2017- | Open | Delete |
New%20Array | Open | Delete |
new%20test | Open | Delete |
nmn | Open | Delete |
nmn#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
nmn#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
nnn | Open | Delete |
o | Open | Delete |
oÃÂñ | Open | Delete |
oij | Open | Delete |
ojkj | Open | Delete |
ok | Open | Delete |
ordersCollection | Open | Delete |
oui | Open | Delete |
Ouiiiiiiiiiiii | Open | Delete |
Ouiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | Open | Delete |
Ouiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | Open | Delete |
Pepa | Open | Delete |
perses#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
perses#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
perses#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
perses#ibcac9f4c58199eeaa7ba5c7750b8434b | Open | Delete |
po | Open | Delete |
poiuytre | Open | Delete |
pornhub.com | Open | Delete |
pppppii#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
pppppii#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
pppppii#ic3ee8978c60737ab5d058b5a3f6a1b09 | Open | Delete |
pppppp | Open | Delete |
prabu | Open | Delete |
Product | Open | Delete |
project 1 | Open | Delete |
project%201 | Open | Delete |
project+1 | Open | Delete |
qqq | Open | Delete |
Qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeerrrrrrr | Open | Delete |
qsdfqsdf | Open | Delete |
quantite --1 | Open | Delete |
qwe | Open | Delete |
qwehgnhngh | Open | Delete |
qweqw | Open | Delete |
qwert | Open | Delete |
qwery | Open | Delete |
qwery2 | Open | Delete |
rdfgdf | Open | Delete |
referees | Open | Delete |
rerererere | Open | Delete |
rerwrer | Open | Delete |
RET | Open | Delete |
rewq | Open | Delete |
rr | Open | Delete |
rrgf | Open | Delete |
rrr | Open | Delete |
rrrr | Open | Delete |
rrrr#i1dcd1cbb0d8eeb1fd3a32dc2aa9c8013 | Open | Delete |
rrrr#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
rrrr#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
rrrr#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
rtr | Open | Delete |
ryhre | Open | Delete |
s | Open | Delete |
sa | Open | Delete |
saASD | Open | Delete |
sad | Open | Delete |
sad.asdasd.sdsad | Open | Delete |
sadsad | Open | Delete |
sadsd | Open | Delete |
salut les | Open | Delete |
salut les gens | Open | Delete |
sam | Open | Delete |
sami | Open | Delete |
samples | Open | Delete |
sasa | Open | Delete |
sd | Open | Delete |
sdczsdzsd | Open | Delete |
sdf | Open | Delete |
sdg | Open | Delete |
sdsd'A=0 | Open | Delete |
SED | Open | Delete |
seeme | Open | Delete |
seeme#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
seeme#i8c18088ea4d8dd4d6e5e986bceed35da | Open | Delete |
seeme#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
select | Open | Delete |
seqtest | Open | Delete |
sf | Open | Delete |
sfsa | Open | Delete |
sgdfs | Open | Delete |
someNewArray#i1097c8b84b58a65ed6ec7b4f0da3ab67 | Open | Delete |
someNewArray#i21ef661e2506d5d0e513dce166c17d49 | Open | Delete |
someNewArray#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
someNewArray#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
sqd | Open | Delete |
sqsq | Open | Delete |
ss | Open | Delete |
sss | Open | Delete |
ssss | Open | Delete |
t | Open | Delete |
Ta%20mere%20la%20grosse%20choin | Open | Delete |
Ta%2520mere%2520la%2520grosse%2520choin#i27992875ec4286a24e569b1e015b0473 | Open | Delete |
Ta%2520mere%2520la%2520grosse%2520choin#ie025efbbb0738ed01a63b326c174233e | Open | Delete |
tableau cellule unique | Open | Delete |
tableau%20cellule%20unique | Open | Delete |
TATA | Open | Delete |
terst | Open | Delete |
tesr | Open | Delete |
test | Open | Delete |
TEST 2 | Open | Delete |
test name | Open | Delete |
test nours | Open | Delete |
test2 | Open | Delete |
test34 | Open | Delete |
test34'A=0 | Open | Delete |
TEST912 | Open | Delete |
Teste | Open | Delete |
teste2 | Open | Delete |
Tester | Open | Delete |
testsetse | Open | Delete |
texte | Open | Delete |
this is an | Open | Delete |
this%20is%20an%20array | Open | Delete |
timo | Open | Delete |
tre | Open | Delete |
trololo | Open | Delete |
tryy5 | Open | Delete |
tttttz | Open | Delete |
tyty | Open | Delete |
ugghutugituiutu | Open | Delete |
ui | Open | Delete |
undefined | Open | Delete |
uu | Open | Delete |
uuu | Open | Delete |
Vai que da | Open | Delete |
vcbbc | Open | Delete |
vdsvd | Open | Delete |
vffv | Open | Delete |
vh | Open | Delete |
Volta Dilma Fora Temer | Open | Delete |
Volta Dilma Fora% | Open | Delete |
Volta%20Dilma%20Fora% | Open | Delete |
Volta%20Dilma%20Fora%20Temer | Open | Delete |
Volta%2520Dilma%2520Fora%2520Temer#i5784b3886628c4362594ffa43547edb4 | Open | Delete |
VRE | Open | Delete |
vv | Open | Delete |
w | Open | Delete |
wasda | Open | Delete |
why doctrine on delete not work | Open | Delete |
why doctrine on delete not work? | Open | Delete |
Woop wooop | Open | Delete |
wqeqe | Open | Delete |
www | Open | Delete |
xcxcxcx | Open | Delete |
xd | Open | Delete |
xvvsdf | Open | Delete |
xx | Open | Delete |
xxx | Open | Delete |
xy | Open | Delete |
xzcvxcv | Open | Delete |
yiktikrtr | Open | Delete |
yoyoy | Open | Delete |
yut | Open | Delete |
yytutyutyu | Open | Delete |
zdzd | Open | Delete |
zizizizizi | Open | Delete |
zzz | Open | Delete |
zzzzzz | Open | Delete |
тест | Open | Delete |
<?php
namespace Fuz\AppBundle\Base;
use Fuz\AppBundle\Entity\Value;
use Fuz\AppBundle\Form\ValueType;
use Fuz\QuickStartBundle\Base\BaseController as QuickStartBase;
use Symfony\Component\Form\Extension\Core\Type;
use Symfony\Component\HttpFoundation\Request;
class BaseController extends QuickStartBase
{
protected function createContextSample(Request $request, $name = 'form', $values = ['a', 'b', 'c'])
{
$data = ['values' => $values];
$form = $this
->get('form.factory')
->createNamedBuilder($name, Type\FormType::class, $data)
->add('values', Type\CollectionType::class, [
'entry_type' => Type\TextType::class,
'label' => 'Add, move, remove values and press Submit.',
'entry_options' => [
'label' => 'Value',
],
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'attr' => [
'class' => "{$name}-collection",
],
])
->add('submit', Type\SubmitType::class)
->getForm()
;
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
$name => $form->createView(),
"{$name}Data" => $data,
];
}
protected function createAdvancedContextSample(Request $request, $name = 'advancedForm')
{
$a = new Value('a');
$b = new Value('b');
$c = new Value('c');
$data = ['values' => [$a, $b, $c]];
$form = $this
->get('form.factory')
->createNamedBuilder($name, Type\FormType::class, $data)
->add('values', Type\CollectionType::class, [
'entry_type' => ValueType::class,
'label' => 'Add, move, remove values and press Submit.',
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'required' => false,
'attr' => [
'class' => "{$name}-collection",
],
])
->add('submit', Type\SubmitType::class)
->getForm()
;
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
$name => $form->createView(),
"{$name}Data" => $data,
];
}
}
<?php
namespace Fuz\AppBundle\Controller;
use Fuz\AppBundle\Base\BaseController;
use Fuz\AppBundle\Entity\Address;
use Fuz\AppBundle\Entity\Addresses;
use Fuz\AppBundle\Entity\Fancy;
use Fuz\AppBundle\Entity\FancyCollection;
use Fuz\AppBundle\Entity\Value;
use Fuz\AppBundle\Form\AddressesType;
use Fuz\AppBundle\Form\FancyCollectionType;
use Fuz\AppBundle\Form\MyArrayType;
use Fuz\AppBundle\Form\ValueType;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Component\Form\Extension\Core\Type;
use Symfony\Component\HttpFoundation\Request;
/**
* @Route("/advanced")
*/
class AdvancedController extends BaseController
{
/**
* Advanced usage
*
* You can reference your form collection in the view, instead of
* putting a selector in the form type.
*
* @Route("/mvcCompliance", name="mvcCompliance")
* @Template()
*/
public function mvcComplianceAction(Request $request)
{
$data = ['values' => ['a', 'b', 'c']];
$form = $this
->createFormBuilder($data)
->add('values', Type\CollectionType::class, [
'entry_type' => Type\TextType::class,
'label' => 'Add, move, remove values and press Submit.',
'entry_options' => [
'label' => 'Value',
],
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'required' => false,
// 'attr' => array (
// 'class' => 'my-selector', <--- Not MVC compliant!
// ),
])
->add('submit', Type\SubmitType::class)
->getForm()
;
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
'form' => $form->createView(),
'data' => $data,
];
}
/**
* Advanced usage
*
* A custom form theme helps define button's layout and positions as and where you want.
*
* @Route("/customFormTheme", name="customFormTheme")
* @Template()
*/
public function customFormThemeAction(Request $request)
{
$data = ['values' => [new Value('a'), new Value('b'), new Value('c')]];
$form = $this
->createFormBuilder($data)
->add('values', Type\CollectionType::class, [
'entry_type' => ValueType::class,
'label' => 'Add, move, remove values and press Submit.',
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'required' => false,
'attr' => [
'class' => 'collection',
],
])
->add('submit', Type\SubmitType::class)
->getForm()
;
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
'form' => $form->createView(),
'data' => $data,
];
}
/**
* Advanced usage
*
* Same demo as above, but with the add button located at the bottom of
* the form instead of close to each field.
*
* @Route("/customFormThemeAddBottom", name="customFormThemeAddBottom")
* @Template()
*/
public function customFormThemeAddBottomAction(Request $request)
{
return $this->customFormThemeAction($request);
}
/**
* Advanced usage
*
* Collection of collections are useful on the most dynamic forms, and a good
* way to test if the plugin is working as expected too.
*
* @Route("/collectionOfCollections", name="collectionOfCollections")
* @Template()
*/
public function collectionOfCollectionsAction(Request $request)
{
$data = [
'collections' => [
[new Value('a'), new Value('b'), new Value('c')],
[new Value('d'), new Value('e'), new Value('f')],
[new Value('g'), new Value('h'), new Value('i')],
],
];
$form = $this
->get('form.factory')
->createNamedBuilder('form', Type\FormType::class, $data)
->add('collections', Type\CollectionType::class, [
'entry_type' => Type\CollectionType::class,
'label' => 'Add, move, remove collections',
'entry_options' => [
'entry_type' => ValueType::class,
'label' => 'Add, move, remove values',
'entry_options' => [
'label' => 'Value',
],
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'prototype_name' => '__children_name__',
'attr' => [
'class' => 'child-collection',
],
],
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'prototype_name' => '__parent_name__',
'attr' => [
'class' => 'parent-collection',
],
])
->add('submit', Type\SubmitType::class)
->getForm()
;
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
'form' => $form->createView(),
'data' => $data,
];
}
/**
* Advanced usage
*
* Looks like there are weird behaviours with Doctrine:
* https://github.com/ninsuo/symfony-collection/issues/7
* Let's test that live!
*
* ... hmm, doesn't look bad anyway
*
* @Route(
* "/usageWithDoctrine/{name}",
* name = "usageWithDoctrine",
* defaults = {
* "name" = "example"
* }
* )
* @Template()
*/
public function usageWithDoctrineAction(Request $request, $name)
{
$repo = $this->getDoctrine()->getRepository('FuzAppBundle:MyArray');
$data = $repo->findOneByName($name);
if (is_null($data)) {
$data = $repo->create($name);
}
$form = $this->createForm(MyArrayType::class, $data);
$form->handleRequest($request);
$form->get('save')->isClicked() && $form->isValid() && $repo->save($data);
return [
'names' => $repo->getArrayNames(),
'form' => $form->createView(),
'data' => $data,
];
}
/**
* Related to usageWithDoctrine demo
*
* @Route(
* "/usageWithDoctrineDelete/{name}",
* name = "usageWithDoctrineDelete"
* )
*/
public function usageWithDoctrineDeleteAction(Request $request, $name)
{
$repo = $this->getDoctrine()->getRepository('FuzAppBundle:MyArray');
if (!is_null($data = $repo->findOneByName($name))) {
$repo->delete($data);
}
return $this->forward('FuzAppBundle:Advanced:usageWithDoctrine', [
'name' => 'example',
]);
}
/**
* A form having a theme and containing several fields
*
* @Route(
* "/formHavingSeveralFields",
* name = "formHavingSeveralFields"
* )
* @Template()
*/
public function formHavingSeveralFieldsAction(Request $request)
{
$address = new Address();
$address->setName('Mickael Steller');
$address->setCompany('fuz.org');
$address->setStreet('41 rue de la Paix');
$address->setPostalcode('75002');
$address->setCity('Paris');
$address->setCountry('France');
$addresses = new Addresses();
$addresses->getAddresses()->add($address);
$form = $this->createForm(AddressesType::class, $addresses);
if ($request->isMethod('POST')) {
$form->handleRequest($request);
}
return [
'form' => $form->createView(),
'data' => $addresses,
];
}
/**
* Another example of form theme
*
* @Route(
* "/fancyFormTheme",
* name = "fancyFormTheme"
* )
* @Template()
*/
public function fancyFormThemeAction(Request $request)
{
$fancyCollection = new FancyCollection();
for ($i = 0; $i < 3; $i++) {
$fancy = new Fancy();
$fancyCollection->getFancyCollection()->add($fancy);
}
$form = $this->createForm(FancyCollectionType::class, $fancyCollection);
$form->handleRequest($request);
if ($form->isValid()) {
$data = $form->getData();
}
return [
'form' => $form->createView(),
'data' => $fancyCollection,
];
}
}
<?php
namespace Fuz\AppBundle\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* MyArray
*
* @ORM\Table(
* name="my_array",
* uniqueConstraints={@ORM\UniqueConstraint(name="name_idx", columns={"name"})}
* )
* @ORM\Entity(repositoryClass="Fuz\AppBundle\Repository\MyArrayRepository")
*/
class MyArray
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255)
*/
protected $name;
/**
* @var ArrayCollection
*
* @ORM\OneToMany(targetEntity="MyElement", mappedBy="array", cascade={"all"}, orphanRemoval=true)
*/
protected $elements;
public function __construct()
{
$this->elements = new ArrayCollection();
}
public function getId()
{
return $this->id;
}
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
return $this;
}
public function getElements()
{
return $this->elements;
}
}
<?php
namespace Fuz\AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* MyElement
*
* @ORM\Table(name="my_element"),
* @ORM\Entity
*/
class MyElement
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var MyArray
*
* @ORM\ManyToOne(targetEntity="MyArray", inversedBy="elements")
* @ORM\JoinColumn(name="my_array_id", referencedColumnName="id")
*/
protected $array;
/**
* @var string
*
* @ORM\Column(name="value", type="string", length=255)
*/
protected $value;
public function setId($id)
{
$this->id = $id;
return $this;
}
public function getId()
{
return $this->id;
}
public function setArray(MyArray $array)
{
$this->array = $array;
return $this;
}
public function getArray()
{
return $this->array;
}
public function setValue($value)
{
$this->value = $value;
return $this;
}
public function getValue()
{
return $this->value;
}
}
<?php
namespace Fuz\AppBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CollectionType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class MyArrayType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('name', TextType::class, [
'label' => 'Array name:',
]);
$builder->add('elements', CollectionType::class, [
'label' => 'Add an element...',
'entry_type' => MyElementType::class,
'allow_add' => true,
'allow_delete' => true,
'prototype' => true,
'required' => false,
'by_reference' => true,
'delete_empty' => true,
'attr' => [
'class' => 'doctrine-sample',
],
]);
$builder->add('save', SubmitType::class, [
'label' => 'Save this array',
]);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => 'Fuz\AppBundle\Entity\MyArray',
]);
}
public function getBlockPrefix()
{
return 'my_array';
}
}
<?php
namespace Fuz\AppBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class MyElementType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('value', TextType::class, [
'required' => false,
]);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => 'Fuz\AppBundle\Entity\MyElement',
]);
}
public function getBlockPrefix()
{
return 'my_element';
}
}
<?php
namespace Fuz\AppBundle\Repository;
use Doctrine\DBAL\Exception\UniqueConstraintViolationException;
use Doctrine\ORM\EntityRepository;
use Fuz\AppBundle\Entity\MyArray;
/**
* MyArrayRepository.
*/
class MyArrayRepository extends EntityRepository
{
public function create($name)
{
$data = new MyArray();
$data->setName($name);
try {
$this->_em->persist($data);
$this->_em->flush();
} catch (UniqueConstraintViolationException $e) {
return null;
}
return $data;
}
public function save(MyArray $data)
{
foreach ($data->getElements() as $element) {
$element->setArray($data);
}
try {
$this->_em->persist($data);
$this->_em->flush();
} catch (UniqueConstraintViolationException $e) {
return null;
}
return $data;
}
public function getArrayNames()
{
$arrays = $this
->_em
->createQuery("
SELECT arr.name
FROM Fuz\AppBundle\Entity\MyArray arr
")
->execute();
$names = [];
foreach ($arrays as $array) {
$names[] = $array['name'];
}
return $names;
}
public function delete(MyArray $data)
{
foreach ($data->getElements() as $element) {
$this->_em->remove($element);
}
$this->_em->remove($data);
$this->_em->flush();
}
}
{% block my_element_label %}{% endblock %}
{% block my_element_errors %}{% endblock %}
{% block my_element_widget %}
<div class="row">
<div class="col-md-7">
{{ form_widget(form.value) }}
</div>
<div class="col-md-2">
<a href="#" class="collection-up btn btn-default">Up</a>
<a href="#" class="collection-down btn btn-default">Down</a>
</div>
<div class="col-md-2">
<a href="#" class="collection-remove btn btn-default">Remove</a>
<a href="#" class="collection-add btn btn-default">Add</a>
</div>
<div class="col-md-1">
<a href="#" class="collection-duplicate btn btn-default">Duplicate</a>
</div>
</div>
{% endblock %}
{% extends 'FuzAppBundle::layout.html.twig' %}
{% block extra_js %}
<script src="{{ asset('js/jquery.collection.js') }}"></script>
{% endblock %}
{% block title %}Advanced usage: example with Doctrine{% endblock %}
{% block body %}
<h2>{{ block('title') }}</h2>
<p>
That's not really an <i>advanced</i> topic, but the sample will be a bit hard to read (as it takes many files),
so let's say it targets more experienced Symfony users.
</p>
<p>
In this demo, we're displaying a MyArray of MyElements, both persisted into the database. The MyArray entity
only have an id and a name, and MyElement has id, MyArray's id and a value. This is quite the same as we seen
in all demos, but persisted.
</p>
<div class="text-center">
<input type="button" id="new" class="btn btn-default" value="Create new array"/>
</div>
{%
form_theme form
'jquery.collection.html.twig'
'FuzAppBundle:Advanced:doctrine-theme.html.twig'
%}
{{ form(form) }}
<hr/>
{% if names|length %}
Existing arrays:
<table class="table">
<thead>
<th>Name</th>
<th>Open</th>
<th>Delete</th>
</thead>
<tbody>
{% for name in names %}
<tr>
<td>{{ name }}</td>
<td>
{% if data.name != name %}<a href="{{ path('usageWithDoctrine', {'name': name}) }}">Open</a>{% endif %}
</td>
<td><a href="{{ path('usageWithDoctrineDelete', {'name': name}) }}">Delete</a></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
{{
tabs([
'Base/BaseController.php',
'Controller/AdvancedController.php',
'Resources/views/Advanced/usageWithDoctrine.html.twig',
'Resources/views/Advanced/doctrine-theme.html.twig',
'Entity/MyArray.php',
'Form/MyArrayType.php',
'Entity/MyElement.php',
'Form/MyElementType.php',
'Repository/MyArrayRepository.php',
])
}}
{% endblock %}
{% block script %}
<script type="text/javascript">
// only useful for the "new" button...
$('#new').on('click', function() {
var name = prompt("Which name would you like to use?");
if (name) {
var uri = '{{ path('usageWithDoctrine', {'name': 'a'}) }}';
document.location = uri.substr(0, uri.length - 1) + encodeURIComponent(name);
}
});
$('.doctrine-sample').collection();
</script>
{% endblock %}