精華區beta NTU 關於我們 聯絡資訊
※ 引述《chjh20223 (SORRY從從)》之銘言: : 開票結果 : 研究生代表選舉無效 : 不好意思上來開幹一下 雖然這裡不是黑特版 : 我想請問的是這樣子的結果跟理由大家能夠接受嗎? 不才兼劣生,也就是小弟我,在看過程式碼之後也有一些疑問,像是 https://github.com/mousems/NTUvote102-2/blob/master/Controller/ TicketSubmit.php#L28 縮網址:http://goo.gl/KCzVPH / 截圖:http://imgur.com/pPg2Hlx 如果小弟理解還算正常的話,然後這份又是真正於伺服器上運行的程式 碼的話,根據http://tw1.php.net/preg_match 對於preg_match的解釋, 此一function需要$pattern$subject兩個參數,用來比對$subject是 否符合$pattern的規則,但在這邊所看到的程式碼之中,卻不見$subject, 所以$check===1這個判斷應該是永遠不會發生,而這其中所包含的內容 是以exec利用git 將結果寫入git (其實就是伺服器的檔案系統), 即用以儲存選舉結果的部份理應不該發生。 簡單講就是,以小弟的理解能力認為,如果伺服器上執行的是這份程式 碼,則投票結果根本不會被紀錄,也應該不會有選舉結果。 不過呢,既然都已經開票了,那就表示選票有記起來,或許是程式碼的 開發者有將這個錯誤修正,但,這也顯示目前放在Github上的程式碼與 伺服器真正執行的程式並不相同。 當然還有一種可能是,小弟閱讀的這段程式碼根本不是用來寫入選舉結 果的部份,那如果是這樣的話,小弟其實就是在台大板上發了一篇廢文。 關於preg_match與能否確實紀錄選舉結果、以及目前已經公開於Github 上的程式碼是否真的就是伺服器上所執行的程式碼等疑問,小弟還想求 教於相關人員,感恩。 ---- 為了確定應該不會進入if為真的區域,小弟寫了一段測試的程式碼: https://gist.github.com/qcl/ecd0775dd2570757dae5 以及測試的結果: http://linux.qcl.tw/phptest/preg_match_test.php -- 太明以為佐藤所說的「豺狼大本營」,大概是指「皇民奉公會」而言的,所以並未詳加追 問,便跟他一起去了。誰知道佐藤要去的地方竟是臺灣大學,太明覺得很奇怪,心想為什 麼把這地方稱為「豺狼大本營」呢?直到他們辦完事情離開那裏的時候,他纔恍惚明白佐 藤那句話的意思。 ─吳濁流,亞細亞的孤兒 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.233.15 ※ 文章網址: http://www.ptt.cc/bbs/NTU/M.1401284572.A.84A.html
weisl:push~~野生qcl大大 05/28 21:47
ykes60513:QCL! 05/28 21:48
denny0223:追了一下 code 問題應該是出在這 http://goo.gl/65WXcW 05/28 21:55
denny0223:文中所提到的地方已經是最後寫入部份了 05/28 21:56
qcl:我的想像是,蓋好選票之後要投入票匭,但是卻投不進去的感覺 05/28 21:59
wctaiwan:推 05/28 22:02
peanut44:qcl徵女友~ 05/28 22:03
MIKEmike07:推推 05/28 22:03
elliot79313:QCL! 05/28 22:03
qcl:就算樓上@denny0223大大說的地方沒有問題,最後還是要執行寫入 05/28 22:03
qcl:但是寫入的時候卻因為$check不可能為1而沒有寫入 這是我的理解 05/28 22:04
mosdavid:朝聖推~ 05/28 22:06
shaform:看了一下,10 號以下,3 樓的 code 會通過,然後執行到 05/28 22:07
shaform:129 行 然後到 http://goo.gl/YpkLZ7 的 81 行 05/28 22:08
denny0223:猜測是有進到 NTULog 這 function 所以透過 log 補救到 05/28 22:08
shaform:然後在 87 行有可能在另個地方存了結果 05/28 22:09
shaform:接下來進到 92 行,然後就到了問題程式碼 05/28 22:10
feber7810:廠商出來說明 05/28 22:10
qcl:如果是透過NTULog補救,那到底是log是選票,還是commit是選票? 05/28 22:12
JeromeWu:(Worship) 05/28 22:13
terrence000:?! 感覺毛毛的 05/28 22:26
qcl:#1JX4l_63 (2)b說明伺服器以git紀錄選票,若無git log如何檢驗? 05/28 22:28
shaform:87 行會跳到 http://goo.gl/OabOUe 的 21 行 05/28 22:28
gj942l41l4:茸茸der 05/28 22:29
shaform:然後從 29 行跳到 http://goo.gl/hAIebm 最後在 229 行 05/28 22:29
shaform:藉由 NTUvoteLog 也就是 http://goo.gl/Qs5ezu 的 75 行 05/28 22:30
shaform:這樣看來這次很可能真的沒有留下任何 git log (?) 05/28 22:31
robertabcd:NTUvoteLog 到底實作在哪, 只有看到 NTUVoteLog 05/28 22:32
shaform:喔喔還有大小寫的差別@@ 05/28 22:34
shaform:好像大小寫沒差 http://goo.gl/ES6D4e 05/28 22:35
fakelee816:沒錯就是這樣 我全部都看的懂也知道在講什麼 05/28 22:36
fakelee816:但是這太簡單了 我就不親自出馬來解題了 05/28 22:36
fakelee816:等到總統到選要用電子投票我再來 普通伴家家酒 05/28 22:37
fakelee816:我不理會的 05/28 22:37
suhorng:所以結果最後怎麼計票啊...? parse log 嗎? 05/28 22:41
suhorng:是至少有log會記下來沒錯, 不過git就沒有了? 05/28 22:41
milker:恩 跟我想的一樣 05/28 22:44
e2167471:恩 你的程式碼跟我寫的大同小異 05/28 22:53
nchueric:樓上喬妹 05/28 22:54
JeromeWu:如果是用log做為結果的話 那不就跟黑箱沒什麼兩樣了 冏> 05/28 23:02
fine246:朝聖 05/28 23:02
donkilu:有卦有推! 05/28 23:31
robertabcd:原來不分大小寫 @@! 05/28 23:37
nakts0123:剛剛點進去發現github上補了$r_id作為subject參數了 05/28 23:38
nakts0123:23:02的更新 05/28 23:40
tiefblau:太神啦 投完票了還在改code 05/28 23:45
ykes60513:投完了還改code?!!! 05/28 23:49
donkilu:太神啦! 05/28 23:51
ADHD:快推不然有人以為我看不懂 05/29 00:03
qqccll:朝聖推 05/29 00:17
ga800360:樓上鳥D 05/29 00:19
oneofdragon:推!! 05/29 00:43
zenixls2:沒好好寫unit test的結果ww 05/29 01:40
jhangyu:有八卦的味道 05/29 01:48
unklemai:朝聖 05/29 02:21
shaform:code 被更新,以上的連結行數都失效,幫忙更新供後人檢視 05/29 07:39
shaform:導致 10 號以上候選人無法紀錄: http://goo.gl/KkhZqS 05/29 07:40
shaform:log 路徑: http://goo.gl/QDwA56 http://goo.gl/IDVaSf 05/29 07:43
shaform:http://goo.gl/K5a6NE 05/29 07:44
shaform:失敗的 git 路徑: http://goo.gl/QDwA56 05/29 07:44
shaform:根據這裡的紀錄,可以看出選後更新了 4 個 commits 05/29 07:49
q82419:朝聖 05/29 07:50
shaform:其中有一些日期是標為 5/27 : http://goo.gl/fF3Mqw 05/29 07:50
shaform:不過一直到昨天晚上 23:02 的那個 commit 才修掉 git 問題 05/29 07:52
jackervator:一瞬間把樓主看仁sql........... 05/29 10:08
mousems:我是作者,投票當天凌晨就把上述的bug修掉了,忙翻了沒 05/29 12:08
mousems:沒commit,正在和選委會討論是否將投票結果的repo公開 05/29 12:08
yehzu:樓上………… 05/29 13:21
chibyuarashi:朝聖推! 05/29 14:11