Php 仅调用一次foreach内部的MySQL insert

Php 仅调用一次foreach内部的MySQL insert,php,mysql,Php,Mysql,我有一个数组$alert\u note。我迭代了一个循环,并用几个字符串填充它: $n = 0; $alert_note = array(); $results = array(); while($row = mysqli_fetch_assoc($query)){ //some code in here populates the $results[$n] array with results from $row $thisnote = "<b>Location

我有一个数组
$alert\u note
。我迭代了一个循环,并用几个字符串填充它:

$n = 0;
$alert_note = array();
$results = array();
while($row = mysqli_fetch_assoc($query)){

    //some code in here populates the $results[$n] array with results from $row

    $thisnote = "<b>Location alert</b><br>
    Alert ID: {$results[$n]['alert-id']}<br>
    Start: {$results[$n]['start-formatted']}<br>
    End: {$results[$n]['end-formatted']}<br>
    Radius: {$results[$n]['radius-km']} km<br>
    Distance: {$results[$n]['distance-km']} km<br>
    <ul>\n";
    //$results[$n]['data'] is a nested array, so iterate through it:
    foreach($results[$n]['data'] as $name => $data){
        $thisnote .= "<li>$name: $data</li>\n";
    }
    $thisnote .= "</ul>";
    $alert_note[$n] = $thisnote;

    $n++;
}
$alert\u note
中的每个字符串都会按预期显示在PHP错误日志中,但只有最后一个字符串插入到MySQL表中。没有抛出任何PHP错误。你知道为什么会这样吗?

请在foreach($alert\u note作为$alert\u note\u contents){

这样我就可以得到错误 var_dump($alert_note);
然后做这个plz,这样我就能看到是否有任何错误

$conn = new mysqli($servername, $username, $password, $dbname);
 // Check connection 
if ($conn->connect_error) 
{ die("Connection failed: " . $conn->connect_error); } 

$sql = "INSERT INTO incident_events (incident, data, time, operator) VALUES ('$incident', '$alert_note_contents', '$now', '$operator')";
 if ($conn->query($sql) === TRUE) 
{ echo "New record created successfully"; } 
else { echo "Error: " . $sql . "<br>" . $conn->error; }
 $conn->close(); 
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误)
{die(“连接失败:”.$conn->connect_error);}
$sql=“插入事件事件(事件、数据、时间、运算符)值(“$incident”、“$alert\u note\u contents”、“$now”、“$operator”)”;
if($conn->query($sql)==TRUE)
{echo“已成功创建新记录”;}
else{echo“Error:“.$sql.”
“$conn->Error;} $conn->close();
放置一个或死('无法执行查询。'.mysqli\u错误($dblink));在您的mysqli_查询中,让我们看看是否有sql错误。刚刚尝试了一下,就得到了一个由未替换的引号引起的错误。添加了一个
mysqli_real_escape_string
,现在一切都正常了。感谢您在正确的方向上所做的工作!我很高兴我帮助了您!
$conn = new mysqli($servername, $username, $password, $dbname);
 // Check connection 
if ($conn->connect_error) 
{ die("Connection failed: " . $conn->connect_error); } 

$sql = "INSERT INTO incident_events (incident, data, time, operator) VALUES ('$incident', '$alert_note_contents', '$now', '$operator')";
 if ($conn->query($sql) === TRUE) 
{ echo "New record created successfully"; } 
else { echo "Error: " . $sql . "<br>" . $conn->error; }
 $conn->close();