変数をSQL文字列に補間する代わりに、クエリパラメータを使用してください。
より安全、高速、簡単です。
$temp = "6c ";
$weather_report = "It's currently $temp " ;
$sql = "UPDATE data_weather SET text= ? WHERE period='report'";
$stmt = $pdo->prepare($sql);
$stmt->execute(array($weather_report));
文字列を引用する必要はないことに注意してください。実際、してはいけない ?
を引用符で囲みます プレースホルダー。天気予報の文字列内でアポストロフィを安全に使用できます。
パラメータプレースホルダーは、SQL式に通常単一のスカラー値を配置する任意の場所で使用できます。例えば。引用符で囲まれた文字列、引用符で囲まれた日付、または数値リテラルの代わりに。ただし、テーブル名や列名、値のリスト、SQLキーワードには使用できません。