作者: X-Engineer 時間: 2019-4-13 14:53 標題: PHP - API SQL - insert into
有冇人知我錯咩呢。。。
HTML
- <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
- <script>
- $(document).ready(function () {
- $('#wdb').submit(function(e){
- e.preventDefault(); //prevent normal submit!
- if ($("#yourAnswer").val() != "" ){
- $.ajax({
- type: 'GET',
- url: 'wdb.php?username='+$('#username').val()&'question='+$('#question').val()&'answer='+$('#answer').val()&'yourAnswer='+$('#yourAnswer').val(),
- dataType: 'json',
- success: function (result) {
-
- }
- });
- } else {
- $("#message").html("Please enter your answer!!");
- $("#tfUser").focus();
- }
- });
- });
- </script>
- <?php
- extract($_GET);
- require_once 'connectdb.php';
- $sql = "SELECT * FROM QuestionsLog";
- $stmt = $pdo->prepare($sql);
- $stmt->execute([$username]);
- $result = array('error' => false);
- if($stmt->rowCount() <= 0){
- $result['error'] = true;
- $sql = "INSERT INTO QuestionsLog (username, question, answer, yourAnswer) VALUES (?,?,?,?);";
- $username = $_GET['$username'];
- $question = $_GET['$question'];
- $answer = $_GET['$answer'];
- $yourAnswer = $_GET['$yourAnswer'];
- $stmt = $pdo->prepare($sql);
- $stmt->execute([$tfUser, $question, $answer, $yourAnswer]);
- $result = array('error' => false);
- } else {
- $arr = $stmt->fetch();
- $result['username, question, answer, yourAnswer'] = $arr['username, question, answer, yourAnswer'];
- }
- echo json_encode($result);
作者: freefdhk 時間: 2019-4-13 15:22
利申 : 冇用開 PHP7 / SQLli . 唔係太熟.
不過你個 mysql 有 function procedure ?
SELECT * FROM QuestionsLog 未必識認你個 username
$stmt->execute([$username]);
而且漏左 get method .
get / post method 應該一開始係頂到存起同檢查一下可能會安全d.
好似 sqlli 都會有 injection problem.
作者: Mr.K 時間: 2019-4-13 16:02
唔應該用extract _GET 咁寫,出黎做野咁寫比上司望倒我諗會比人炒多,如果我望倒都會
extract 左下面仲 $_GET['$username'],我估$_GET['$username']根本唔存在,應該係 $_GET['username'] 或 $username
作者: freefdhk 時間: 2019-4-13 16:45
唔講都沒留意樓主用左個咁危險既FUNCTION.
POST/GET 推入去既野會強行直接OVERRIDE 現有既野.
可能樓主係想整後門。
不過而家太多外行人讀 IT 再自動畢業 , 然後入行做 Programmer 咩都左抄右抄,
老闆要請n個新手去做一個PROJECT , 然後人工推低晒 .
作者: CVSDF 時間: 2019-4-13 18:18
唔明你d邏輯 ...
Select 唔到反而要插新 record 落去個 table 度 ?
呢 d 係咩玩法?
作者: freefdhk 時間: 2019-4-13 20:31
疑似新手寫的問答記錄系統.,
每個 USER只能答一次 , 但又吾係 每個user 每一題最多答一次.
不過神奇的是. 同一個 TABLE 記埋 答果陣既 問題、答案選擇.
其實應該 Questions 同 user answer 要分開 tables 去儲.
而 answer tables 應該 記錄 username , question_id , user_answer 就夠.
如果係功課來講 樓主比心機學習.
如果係工作來講 , 樓主....應該要再上多幾堂 database 課程.
作者: Mr.K 時間: 2019-4-13 23:15
呢行係咁,太多呃飯食,但搞到真正做野既人,收入唔正常唔公平,我都做到灰諗緊轉行
作者: slxar 時間: 2019-4-13 23:33
- url: 'wdb.php?username='+$('#username').val()&'question='+$('#question').val()&'answer='+$('#answer').val()&'yourAnswer='+$('#yourAnswer').val()
作者: freefdhk 時間: 2019-4-13 23:46
IT 呢行自立門戶接JOB 會冇咁灰 . 吾岩價就最多吾接.
得張CERT 呃飯食既搞到平一平都請到人 , 8K ~ 12K 都見過 .
D 腦細既心態用筆錢請 3個 呃飯食 都好過 20K~30K 請 1個 人工高但做到野.
不過可能佢地又會怕用 20K~30K 請左個都係 呃飯食 . ~哈哈
不過講真就係 , 其他工種 薪酬 同IT 差不多 , 又吾洗用腦諗野 . 做IT 打工係灰爆.
作者: Mr.K 時間: 2019-4-13 23:53
到左30-40k,D老闆就會無野做都R D野比佢做,一定要日夜好忙咁先心理平恒,如果好勁既好快解決倒問題又會諗會唔會請個平既都得呢
作者: freefdhk 時間: 2019-4-13 23:57
- var username = $("#username").val();
- $.ajax({
- type: "POST",
- url: "wdb.php?",
- data: "username="+ username,
- success: function(server_response){
- //YOUR CODE
- }
- });

作者: floatingcat 時間: 2019-4-16 20:57
本帖最後由 floatingcat 於 2019-4-16 21:02 編輯
呢段
url: 'wdb.php?username='+$('#username').val()&'question='+$('#question').val()&'answer='+$('#answer').val()&'yourAnswer='+$('#yourAnswer').val(),
應該係咁
url: 'wdb.php?username='+encodeURIComponent($('#username').val()) +'&question='+encodeURIComponent($('#question').val())+'&answer='+encodeURIComponent($('#answer').val())+'&yourAnswer='+encodeURIComponent($('#yourAnswer').val()),
留意番個 + 同 &, 唔好放錯
作者: xader 時間: 2019-4-17 19:46
本帖最後由 xader 於 2019-4-17 19:47 編輯
Ajax call 就係 wdb.php
- url: 'wdb.php?username='+$('#username').val()&'question='+$('#question').val()&'answer='+$('#answer').val()&'yourAnswer='+$('#yourAnswer').val(),
中間個 router 去左邊??
作者: X-Engineer 時間: 2019-4-19 17:32
Thank you everyone !!
不過,要澄清一下
其實小弟讀緊 夜校 High Diploma
VTC IVE - Information Communications and Technology in HD
呢個係功課。。。。。。
小弟冇做Programmer的資質,對programming冇咩興趣
純粹係為交巧課。。。。。。
係課程內容,冇計
同埋讀返書,只為有沙紙,可升上去
計劃讀埋Master就算。。。。。。
作者: X-Engineer 時間: 2019-4-19 17:33
Right..HaHa..
作者: X-Engineer 時間: 2019-4-19 17:36
Right, I'm in Infar, network and Deskside field
作者: carlkyo 時間: 2019-4-29 10:11
Thank you everyone !!
不過,要澄清一下
其實小弟讀緊 夜校 High Diploma
VTC IVE - Information Commun ...
X-Engineer 發表於 2019-4-19 17:32
hku space有讀9個月3萬幾既master
作者: gamezz 時間: 2019-5-9 16:06
回覆 14# X-Engineer
HD 讀上去,唔係degree先咩?可以跳級讀master?
作者: freefdhk 時間: 2019-5-9 17:10
聽講MASTER 係可以直接私人簽發 .
我見有D保險業既人講 , 佢地公司可以出張 MASTER 證書比佢地.
前提係佢地未有大學學位都可以.

