質問編集履歴
2
エラー行にコメントを挿入しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
### 発生している問題・エラーメッセージ
|
7
7
|
上記のエラーメッセージが出ている行は
|
8
|
-
$
|
8
|
+
$db->fetch_assoc();
|
9
9
|
となっており、
|
10
10
|
$result=$db->query("select count(*) from reserveslot where date>={$row["date"]}"); // $row["date"]は上で select * from todayから取得しています
|
11
11
|
|
@@ -43,7 +43,7 @@
|
|
43
43
|
$row=$result->fetch_assoc();
|
44
44
|
|
45
45
|
$result=$db->query("select count(*) from reserveslot where date>={$row["date"]}");
|
46
|
-
$row=$result->fetch_assoc();
|
46
|
+
$row=$result->fetch_assoc(); // エラー行
|
47
47
|
if($row["count"]==0){
|
48
48
|
$result=$db->query("select * from today");
|
49
49
|
$row=$result->fetch_assoc();
|
1
コメント欄に書いたソースコードをここに書き直しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,8 +35,91 @@
|
|
35
35
|
maxday int)
|
36
36
|
default charset=sjis");
|
37
37
|
|
38
|
+
function product_reserve_time(){
|
39
|
+
$db=new mysqli("localhost","username","password","dbname");
|
40
|
+
$db->set_charset("sjis");
|
41
|
+
$result=$db->query("select* from today");
|
42
|
+
print $db->error;
|
43
|
+
$row=$result->fetch_assoc();
|
44
|
+
|
45
|
+
$result=$db->query("select count(*) from reserveslot where date>={$row["date"]}");
|
46
|
+
$row=$result->fetch_assoc();
|
47
|
+
if($row["count"]==0){
|
48
|
+
$result=$db->query("select * from today");
|
49
|
+
$row=$result->fetch_assoc();
|
50
|
+
$time=(int)$row["date"];
|
51
|
+
|
52
|
+
$db->query("insert into reserve_info (date) values({$row["date"]})");
|
53
|
+
print $db->error;
|
54
|
+
for($i=0;$i<6;$i++){
|
55
|
+
$db->query("insert into reserveslot (date) values('{$time}')");
|
56
|
+
$time=$time+86400;
|
57
|
+
print $db->error;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
if($row["count"]!=0&&$row["count"]<7){
|
61
|
+
$count=(int)$row["count"];
|
62
|
+
$count=7-$count;
|
63
|
+
$result=$db->query("select * from reserveslot order by date desc order by date desc limit 1");
|
64
|
+
print $db->error;
|
65
|
+
$row=$result->fetch_assoc();
|
66
|
+
$time=(int)$row["date"];
|
67
|
+
for($i=0;$i<$count;$i++){
|
68
|
+
$time=$time+86400;
|
69
|
+
$db->query("insert into reserveslot (date) values('{$time}')");
|
70
|
+
print $db->error;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
74
|
+
$result=$db->query("select * from reserveslot where date>=(select date from today) limit 7");
|
75
|
+
print $db->error;
|
76
|
+
while($row=$result->fetch_assoc()) {
|
77
|
+
printf("<input type=\"radio\" name=\"date\" value=\"%s\">%s月%s日",$row["date"],idate("m",$row["date"]),idate("d",$row["date"]));
|
78
|
+
printf("<select name=\"%s\"><option>----</option>",$row["date"]);
|
79
|
+
if($row["rs1"]==0) print "<option value=\"1\">19:00</option>";
|
80
|
+
if($row["rs2"]==0) print "<option value=\"2\">20:30</option>";
|
81
|
+
if($row["rst3"]==0) print "<option value=\"3\">22:00</option>";
|
82
|
+
if($row["rt4"]==0) print "<option value=\"4\">23:30</option>";
|
83
|
+
if($row["rs5"]==0) print "<option value=\"5\">25:00</option>";
|
84
|
+
if($row["rs6"]==0) print "<option value=\"6\">26:30</option>";
|
85
|
+
if($row["rs7"]==0) print "<option value=\"7\">28:00</option>";
|
86
|
+
print "</select><br><br>";
|
87
|
+
}
|
88
|
+
$db->close();
|
89
|
+
}
|
90
|
+
|
91
|
+
function updtrs(){
|
92
|
+
$query="update table reserveslot set ";
|
93
|
+
switch($_SESSION["time"]){
|
94
|
+
case "1":
|
95
|
+
$query.="rs1=1 ";
|
96
|
+
break;
|
97
|
+
case "2":
|
98
|
+
$query.="rs2=1 ";
|
99
|
+
break;
|
100
|
+
case "3":
|
101
|
+
$query.="rs3=1";
|
102
|
+
break;
|
103
|
+
case "4":
|
104
|
+
$query.="rs4=1 ";
|
105
|
+
break;
|
106
|
+
case "5":
|
107
|
+
$query.="rs5=1 ";
|
108
|
+
break;
|
109
|
+
case "6":
|
110
|
+
$query.="rs6=1 ";
|
111
|
+
break;
|
112
|
+
case "7":
|
113
|
+
$query.="rs7=1 ";
|
114
|
+
break;
|
115
|
+
}
|
116
|
+
$query.="where date='".$_SESSION["date"]."'";
|
117
|
+
$db=new mysqli("localhost","username","password","dbname");
|
118
|
+
$db->query("{$query}");
|
119
|
+
$db->close();
|
120
|
+
}
|
38
121
|
```
|
39
|
-
|
122
|
+
最初からこのようにすればよかったかもしれませんね。
|
40
123
|
### 試したこと
|
41
124
|
intとvarcharの間でwhereを使っているのがダメなのかと思いましたが、mysqlのオンラインマニュアルにはそんな記述は見つけられず、手詰まりになっています。
|
42
125
|
目が全く見えないので、できる限りこの掲示板で解決できるよう、URLだけのご紹介だけでなく、今後も同じことで引っかからないように基本的にわかっていなさそうなこともフォローしていただいたり、できる限り修正箇所をどのように修正すればいいのか丁寧にお知らせいただけると助かります。ご理解とご協力のほどお願いいたします。
|