前提・実現したいこと
phpで抽選システムを作っているのですがデータベースに値が入らずnull
になります。 解決策を教えてください
$sに値がはいっていないのか Rfirのカラムに値がはいりません
エラーメッセージは発生しませんでした
###該当のソースコード
php
1 $a= htmlspecialchars($_POST["asa"],ENT_QUOTES); 2 $b= htmlspecialchars($_POST["yoru"],ENT_QUOTES); 3 $c= htmlspecialchars($_POST["kuro"],ENT_QUOTES); 4 $e=$_POST["com"]; 5 $connect = 'mysql:host=XXXX;dbname=XXXX;'; 6 $user = 'XXXX'; 7 $pass = 'XXXX'; 8 $db= new PDO($connect,$user,$pass); 9 10 $sql = "SELECT * FROM lottery WHERE gra = ? AND cla BETWEEN ? AND ? ORDER BY ran DESC"; 11 $stmt = $db->prepare($sql); 12 $stmt->bindvalue(1, $a); 13 $stmt->bindvalue(2, $b); 14 $stmt->bindvalue(3, $c, PDO::PARAM_INT); 15 $stmt->execute(); 16 17 while($result = $stmt->fetch(PDO::FETCH_ASSOC)){ 18 } 19 $rank[] = $result; 20 foreach($rank as $mes){ 21 $sql01 = "select count(*) from lottery where Rfir = '{$mes["Fir"]}'"; 22 $ps = $db -> query($sql01); 23 $ea = $ps->fetchColumn(); 24 $sql02 = "select count(*) from lottery where Rfir = '{$mes["Sce"]}'"; 25 $ps = $db -> query($sql02); 26 $eb = $ps->fetchColumn(); 27 $sql03 = "select count(*) from lottery where Rfir = '{$mes["Thi"]}'"; 28 $ps = $db -> query($sql03); 29 $ec = $ps->fetchColumn(); 30 $sql04= "select count(*) from lottery where Rfir = '{$mes["Fou"]}'"; 31 $ps = $db -> query($sql04); 32 $ed = $ps->fetchColumn(); 33 34 if($ea < $e) { $s = $mes['Fir']; 35 $rands = mt_rand(100000,999999) ; 36 } elseif ($eb < $e) { $s = $mes["Sce"]; 37 $rands = mt_rand(1000000,9999999); 38 } elseif ($ec < $e) { $s =$mes["Thi"]; 39 $rands = mt_rand(10000000,99999999) ; 40} elseif ($ed < $e) { $s = $mes["Fou"]; 41 $rands = mt_rand(100000000,999999999); 42} 43 44 $usql = "update lottery set Rfir = :Rfir, ran = :ran"; 45 $stmt = $db->prepare($usql); 46 $stmt->bindvalue(':Rfir', $s); 47 $stmt->bindvalue(':ran', $rands); 48 $stmt->execute(); 49 } 50 51 52 ?> 53
補足情報(FW/ツールのバージョン)
データベースは id
int(11) NOT NULL auto_increment,
time
datetime default NULL,
gra
varchar(255) default NULL,
cla
varchar(255) default NULL,
num
varchar(255) default NULL,
Fir
varchar(255) default NULL,
Sce
varchar(255) default NULL,
Thi
varchar(255) default NULL,
Fou
varchar(255) default NULL,
Fiv
varchar(255) default NULL,
ran
int(11) default NULL,
Rfir
int(11) default NULL,
Rsce
int(11) default NULL,
Rthi
int(11) default NULL,
このようになっています