PHP 和 mySql 警告:未定义的数组键

问题描述 投票:0回答:1

我正在尝试插入日历条目,但我不确定我做错了什么,每次我创建约会后都会出现一条消息“警告:C:\xampp\htdocs\University Tutoring Center 中未定义的数组键“event_start” \pages utordetail.php 第 158 行“

$chkEvent_sql = "SELECT event_title, event_shortdesc, date_format(event_start, '%l:%i %p') FROM calendar_events WHERE month(event_start) = ? AND dayofmonth(event_start) = ? AND year(event_start) = ? ORDER BY event_start ";

                $stmt = $mysqli->prepare($chkEvent_sql);
                $stmt->bind_param("iii", $month, $dayArray['mday'], $year);
                $stmt->execute();
                $result = $stmt->get_result();
                
                if($result->num_rows > 0){
                    $event_txt = "<ul>";
                        while($row = $result->fetch_assoc()) {
                           
                            $event_title = mysqli_real_escape_string($mysqli, $row['event_title']);
                            $event_shortdesc = mysqli_real_escape_string($mysqli, $row['event_shortdesc']);
                            $event_start = mysqli_real_escape_string($mysqli, $row['event_start']);
                          
                        }
                } else {
                    $event_title = "";
                    $event_shortdesc ="";
                    $event_start = "";
                }
                    
                $mysqli = mysqli_connect("localhost","root","","tutorcenter");
                        
                echo "<td><a class=\"daysOfTheMonth\" href=\"event_cal.php?m=".urlencode($month)."&amp;d=".urlencode($dayArray['mday'])."&amp;y=".urlencode($year)."\">" .urlencode($dayArray['mday']).'</a><br>'.htmlspecialchars($event_title).'<br>'.htmlspecialchars($event_shortdesc);
                        
                unset($event_title);
                unset($event_shortdesc);
                unset($event_start);
                $start += ADAY;
            } //end if
php arrays key undefined
1个回答
0
投票

你的 sql 中缺少 as event_start,试试:

$chkEvent_sql = "SELECT event_title, event_shortdesc, date_format(event_start, '%l:%i %p') as event_start FROM calendar_events WHERE month(event_start) = ? AND dayofmonth(event_start) = ? AND year(event_start) = ? ORDER BY event_start";
© www.soinside.com 2019 - 2024. All rights reserved.