自分で作ったパラメータ名はクオートする
data:{'ymd':$('#ymd').val(), 's': s}
プロパティと値、プロパティと値
ところで普通はdataTypeをこの後記述するが、
今回送るだけでもらわないので
dataTypeは書かない
$.ajax({
url:'api/set_seat.php',
type:'post',
data:{'ymd':$('#ymd').val(), 's': s},
})
.done(function(){
})
.fail(function(){
alert('NG');
});
さてエラーが出てうまくいかなかったがset_seat.phpの方の問題だった
①確認のために
$sArr = explode(",",$_POST["s"]);
のあとに
echo($sArr);
を追加する
②set_seat.phpのurlを「直にうって」呼び出す
→エラー
→$stmt->bindValue(":seat_id",$val] ,PDO::PARAM_INT);
と余計なものが入っていた
→消す
できた
読みこみなおすと
ちゃんと予約済みになっている
20個のパラメータをpostで送るやり方もあるらしい
最後はajaxじゃなくてpostで送る形
hiddenのvalueをクリックするたびにオンオフする感じ
隠しフィールドをつくっておいて
input要素を作ってつくてそこにアペンドする
<form action="hoge.php" method="post">
<div id="foo"></div>
//input type ="hidden"で0か1かの値をもたせる
<button type="submit">send</button>
</form>
みたいな
あとは制作のエラーの問題と
同じ名前で登録できないようにajaxではじきたい問題
同じ名前で登録できないようにajaxではじく骨組みについて
概論
SELECT COUNT(*) AS num FROM users WHERE u_name = :u_name
COUNTは関数なので()がいるし、
そのあとはたいていインデックスの貼られているプライマリキーのカラムを指定するが、
*でも100件ぐらいならOK
:u_nameにテキストボックスの中身を入れる
1回単純にフェッチをする
$row のなかのnumを見る(件数の項目名)
apiの中で
echo($row["num"]);
みたいな?
dataType:'text',
0か1をechoする
jsonでもなんでもないのでtextとする
複雑なものならjsonの必要があります
そのユーザ名をもってるひとは何人いますでしょうか?と聞く形になる